Application areas of application software. Scientific and technical programs Programs for scientific and engineering calculations


1

This paper describes a program for calculating the kinetic characteristics of heterophase reactions, written in the Visual Basic Community 2015 programming language. The calculation of rate constants and activation energies is carried out using regression analysis methods. The reaction mechanism is determined by the minimum errors of approximations from a number of functions (power and exponential laws, Prout–Tompkins and Abraham equations). The reaction mechanism determines the reaction zone: power-law – kinetic, and the other three – diffusion. Also, using the example of the reaction of fluoridation of anorthosites with ammonium hydrodifluoride, a statistical test of hypotheses about the adequacy of the used Snedecor-Fisher regression models and the significance of regression coefficients using the Student’s t-test is carried out. The program was tested on calculations of heterophase reactions carried out during technological processes of complex fluoride processing of aluminosilicate and silicate raw materials in the Upper Amur region, as well as in a number of regions of the Russian Federation.

rate constant

activation energy

reaction zone

reaction mechanism

linear regression

nonlinear regression

procedure

1. Sorokin A.P., Rimkevich V.S., Pushkin A.A., Eranskaya T.Yu. Waste-free geotechnologies for complex processing of aluminosilicate and silicate raw materials of the Amur region // Mining Information and Analytical Bulletin. – 2016. – No. 11. – P. 215–223.

2. Stromberg A.G., Semchenko D.P. Physical chemistry. – M.: Higher School, 1999. – 528 p.

3. Pushkin A.A., Rimkevich V.S. Establishment of zones of heterophase reactions // International scientific research journal. – 2017. – No. 03(57). – Part 3. – pp. 35–38.

4. Baldin K.V., Bashlykov V.N., Rukosuev A.V. Theory of Probability and Mathematical Statistics. Textbook. 2nd edition. – M.: Publishing and trading corporation “Dashkov and K°”, 2014. – 473 p.

6. Dukin A.N., Pozhidaev A.A.. Self-instruction manual Visual Basic 2010. – St. Petersburg: BHV-Petersburg, 2010. – 560 p.

7. Shevyakova D., Stepanov A., Dukin A. Self-instruction manual Visual basic 2008. – St. Petersburg: BHV-Petersburg, 2008. – 592 p.

8. Kolemaev V.A., Staroverov S.V., Turundaevsky V.B. Theory of Probability and Mathematical Statistics. Textbook for economic specialties at universities. – M.: Higher School, 1991. – 400 p.

This article is devoted to computer processing of experiments on the kinetics of chemical reactions. At our institute, the kinetics of chemical reactions is studied in the process of developing technological processes for complex fluoride processing for various types of aluminosilicate raw materials in the Upper Amur region. The results of an experimental study on the kinetics of a chemical reaction are the concentration values ​​of a certain substance C ik (t ik) at given times t ik (i = 1, ..., n k, where n k is the number of time counts at temperature T k, k = 1.2, …, l, where l is the number of temperatures). The number of operating temperatures l allowed in the program is from two to four. The number of time counts n k , in the general case, differs for different temperatures T k and varies from 3 to 9.

The results of processing experimental data are rate constants and activation energies, as well as reaction zones and reaction mechanisms. Knowledge of the reaction zone and mechanism at a particular temperature provides knowledge about the physical and chemical process that determines its occurrence and allows one to control the course of the reaction. Comparison of rate constants and activation energies of various reactions allows us to compare these reactions with each other.

We carry out calculations of rate constants in our work using four types of physicochemical processes corresponding to the four laws of changes in concentrations: power law (), Abrahami (), exponential () and Prout-Tompkins, where w i is the reaction rate, C i is the concentration of the substance, α i is the degree of transformation of the substance, k is the rate constant. The power law describes particle collisions, the other three describe different types of diffusion. In accordance with this, the zone of reactions described by a power-law process is kinetic, for the other three processes it is diffusion.

To determine the reaction mechanism, the program uses approximation error values. We believe that the reaction mechanism at a given temperature is determined by the law of changes in concentrations in which the approximation error at a given temperature is minimal. Since the approximation errors are calculated for each temperature, the reaction mechanism for each temperature can be different. The program organizes automatic selection of data (rate constants, activation energies, zones and reaction mechanisms) for each of the studied temperatures.

Purpose of the study

The starting point for the research in this work is data on the kinetics of chemical reactions. The purpose of the study is to determine the kinetic characteristics of the reaction. Mathematical processing of experimental results is greatly facilitated when using a computer calculation program. In order to develop a computer program, a calculation algorithm was created with subsequent software implementation, initially using the Microsoft Access 2007 application using vba. This paper describes a program for processing experimental data on kinetics with the calculation of kinetic parameters: rate constants, activation energies, zones and reaction mechanisms, written in Visual Basic Community 2015.

Materials and research methods

The research methods used in the work are regression analysis and computer calculations. For each of the processes mentioned above, a regression equation is constructed by linearizing its equation. Linearization is carried out in the case of power, exponential laws and the Prout-Tompkins equation by logarithm, and in the case of Abrahami by the double logarithm method. The resulting regression equations are nonlinear. By changing variables, we make the transition to two linear regression models: with a slope and a free term in the case of the power law and Abrahami, and with one slope in the case of the exponential law and the Prout-Tompkins equation (see Table 1). Next, using the formulas of the least squares method, we calculate the values ​​of the angular coefficients and free terms. In the case of the power law and the Abrahami equation, the slope is equal to the order of the reaction, and the free term is equal to the logarithms of the rate constant. In the case of the exponential law and the Prout-Tompkins equation, the slopes are rate constants.

Table 1

Nonlinear regression models, replacement of variables for the transition to linear models and their equations for the processes used in the program

Name of the law

Mathematical formulation of the law

Nonlinear regression

Replacing variables

Linear regression

Linear

Power

Exponential

Prout - Tompkins

Arrhenius

Activation energies in the program are calculated using the Arrhenius equation for rate constants. After transformation, logarithm, and substitution of variables, an equation with one slope is obtained, which is calculated by the least squares method. The slope coefficient is equal to the activation energy divided by the universal gas constant R (last row in Table 1).

The program calculates approximation errors using the formula

(*)

where cik(tik) are the experimental values ​​of concentrations at time points tik, is the calculated value obtained according to the law under study at points tik at temperature Tk, and nk, as before, is the number of time counts at a given temperature.

The selection of the dependence with a smaller approximation error, and therefore the determining mechanism of the reaction at a given temperature, is carried out automatically in the program.

In addition, the work tests statistical hypotheses about the adequacy of each of the regression models using the Snedecor-Fisher test, as well as the significance of the coefficients of these regression models using the Student t-test. The hypothesis about the homogeneity of reproducibility variances is not tested in the work, since only one measurement is carried out at each point in the factor space.

Research results and discussion

The Kinetics program for calculating the kinetic characteristics of heterophase reactions is written in Visual Basic in the integrated software development environment Visual Studio Community 2015.

The program has ten tabs: Input, Kinetics, Reaction Zone, Graphs, StatisticsX (X = 0, ..., 5).

The Input tab is designed to accommodate control elements that enter data: arrays of concentrations ConcX(i) and times TimeX(i), temperature string TemperX (X = 1,...,4; i = 1, 2,..., n), number of points time counts nk, number of data series l, maximum times and concentrations for each temperature Tk.

The significance level (set by selecting one of the eight values ​​in the list in the ComboBox field) is used to select the Student and Snedecor-Fisher coefficients from the Excel Student and Fisher tables connected to the program.

After selecting the significance level by clicking the Calculate button on the Input tab, the procedure for calculating all provided characteristics starts. First of all, two-dimensional arrays of concentrations and time Time(i, j) and Сonc(i, j), one-dimensional arrays of temperatures Temperature(k) and reverse temperatures ReTemp(k) = 1/(Temperature(k) + 273), k = 1,…, l.

Next, the transition is made to the relative values ​​of concentration and time Time_norm(i, j) and Сonc_norm(i, j), dividing by the maximum values. Then generalized coordinates are introduced, representing three-dimensional arrays abscissa(4, 9, 4) and ordinate(4, 9, 4), in which the first index means the ordinal number of the law of changes in concentrations from 0 to 4, the second - the ordinal number of the time count from 3 to 9, the third is the serial number of the temperature series from 1 to 4. Here is a fragment of the program in which generalized variables are entered:

If j = 0 Then ordinate (j, i, k) = Conc_norm (i, k): abscissa (j, i, k) = Time_norm (i, k)

If j = 1 Then ordinate (j, i, k) = Math.Log (Rate (i, k)): abscissa (j, i, k) = Math.Log (Conc_norm(i, k))

If j = 2 Then ordinate (j, i, k) = Math.Log (-Math.Log (1 - Conc_norm (i, k))): abscissa(j, i, k) = Math.Log(Time_norm(i , k))

If j = 3 Then ordinate (j, i, k) = Math.Log (1 - Conc_norm (i, k)): abscissa (j, i, k) = Time_norm (i, k)

If j = 4 Then ordinate (j, i, k) = Math.Log (Conc_norm (i, k) / (1 - Conc_norm (i, k))): abscissa (j, i, k) = Time_norm (i, k).

After this, the sums are calculated for the least squares method:

Sx (j, k) = Sx (j, k) + abscissa (j, i, k)

Sy (j, k) = Sy (j, k) + ordinate (j, i, k)

Sxy (j, k) = Sxy (j, k) + abscissa (j, i, k) * ordinate (j, i, k)

Sx2 (j, k) = Sx2 (j, k) + Math.Pow(abscissa (j, i, k), 2),

where Sx (j, k), Sy (j, k), Sxy (j, k) and Sx2 (j, k) are the sums of abscissas, ordinates, products of abscissas and ordinates and squares of abscissas, respectively.

Next, the program calculates the free terms and slope coefficients of regressions for each regression model (each of the laws of concentration changes) and at each temperature. The rate constants ConRat(j,k) for the linear model (j = 0) are equal to the free term, for the power law (j = 1) and the Abrahami equation (j = 2) are calculated by taking the exponent of the free term, and the reaction orders m(j, k) for these two laws are equal to the angular coefficients (rows second and third from the top of Table 1). The rate constants for the exponential law (j = 3) and the Prout-Tompkins equation (j = 4) are equal to the slopes of the corresponding regression equations (in Table 1, rows 4 and 5 at the top).

Errors in calculating rate constants pK(j,k) and reaction orders pM(j,k) are calculated using the formulas for calculating regression coefficients, and the approximation error Prec(j, k) is calculated using formula (*). Errors in the calculation of rate constants pK(j,k) and approximations Prec(j, k) are calculated for each model and at each temperature. Reaction order errors pM(j,k) are calculated for models with j = 1, 2.

The activation energies are calculated using the formula given in the last column of the sixth row from the top of the table. 1. In this regression model, the variables are the inverse temperatures ReTemp(k) and the logarithm of the rate constant ConRat(j, k). From this formula it follows that the activation energy is equal to the angular coefficient of this model multiplied by the universal gas constant. For each model, one activation energy value is calculated. The activation energy error pE(j) is also calculated for each model.

Calculation of rate constants, rate constant errors, approximation errors, as well as reaction orders and their errors are provided on the Kinetics tab.

The Reaction Zone tab (see Fig. 1) contains the results of automated selection: data on those zones and reaction mechanisms that (according to the results of calculation and selection) took place at each temperature. This also includes the values ​​of rate constants, errors in their calculations and errors in approximations, and activation energies.

By clicking the Output button on the Reaction Zone tab, the data is output to a Microsoft Word table. Data output is carried out using a separate procedure that automatically formats text and tables. The program provides for displaying and filling out tables for a different number of data rows (from two to four).

In Fig. Figure 1 shows, as an example, the results of calculating the reaction of fluoridation of anorthosites with ammonium hydrodifluoride. From this figure it is clear that this solid-phase reaction at all temperatures occurs in the diffusion zone, at lower and middle temperatures according to the Abrahami equation, and at upper temperature according to the exponential law. The activation energy for Abrahami is equal in this case to 19.1 kJ/mol, and for the exponential law it is equal to 19.7 kJ/mol. Despite the different reaction mechanisms, the activation energies are close and the rate constants increase monotonically from 0.004483 min-1 to 0.017836 min-1. Apparently, this is due to the fact that the reaction orders for Abrahami turned out to be close to 1 and took values ​​of 0.86; 0.91; 0.96; 1.09 (see Fig. 2). From a comparison of the Abrahami equation with the exponential law, it is obvious that at order equal to 1, the Abrahami equation becomes an exponential law.

Rice. 1. Kinetics tab of the Kinetics program with calculation results using the example of the reaction of fluorination of anorthosites with ammonium hydrodifluoride

Rice. 2. Kinetics tab of the Kinetics program with calculation results using the example of the reaction of fluorination of anorthosites with ammonium hydrodifluoride

table 2

Statistical testing of hypotheses about the adequacy of regression models and the significance of Snedecor-Fisher and Student regression coefficients, respectively

The program carries out statistical testing of hypotheses about the adequacy of the regression model using the Snedecor-Fisher test and about the significance of regression coefficients using the Student t-test (see Table 2).

Statistical testing showed the adequacy of models with j = 2, 3, 4 at all temperatures. Models with j = 0 and 1 are inadequate at lower temperatures. Testing the significance of the regression coefficients showed the significance of the regression slopes for models with j = 0, 2, 3, 4 at all temperatures, with j = 1 at the lower temperature. The free terms are only significant for the power law at the upper temperature.

Let's return to Fig. 1. We will subject the mechanisms selected to minimize approximation errors, Abrahami and exponential, to statistical analysis. Note that the rate constants for Abrahami are calculated by taking the exponential of the intercept, which according to Student's t-test is statistically insignificant at all temperatures. Apparently, we should assume that the reaction mechanism is an exponential law, including at low and medium temperatures. The activation energy will therefore be equal to 19.7 kJ/mol at all temperatures, and the rate constants will have values ​​of 0.003942; 0.005346; 0.007637; 0.017836 (see Fig. 2).

The Kinetics program for calculating kinetic characteristics was tested on calculations of various reactions in the process of complex fluoride processing of aluminosilicate and silicate raw materials with the extraction of useful products.

Bibliographic link

Pushkin A.A., Rimkevich V.S. PROGRAM FOR CALCULATING THE KINETICS OF HETEROPHASE REACTIONS IN VISUAL BASIC COMMUNITY LANGUAGE 2015 // Fundamental Research. – 2017. – No. 10-3. – P. 518-523;
URL: http://fundamental-research.ru/ru/article/view?id=41868 (access date: 06/23/2019). We bring to your attention magazines published by the publishing house "Academy of Natural Sciences"

There are many programs for scientific work. There are highly specialized ones, there are general purpose ones, there are paid and free programs. All of them, one way or another, should help process the data and build graphs.
The comprehensive program allows you to export data from ASCII files (txt or dat), manipulate data, build a graph, perform smoothing, approximate data with a user function or standard functions, and much more. The most important thing is that the program is easy to use and the graphs are suitable for publication.
The de facto standard for creating scientific graphics is Origin, and, oddly enough, Excel. Although Excel does not create graphs well, and its work with graphics leaves much to be desired, sometimes it is very convenient to work in it. Here we can also mention lesser-known paid programs SigmaPlot, Grapher, Kaleidagraph, IgorPro and of course the biggest monster TechPlot. These programs are expensive or very expensive. The question arises, is it possible to replace them with free analogues? Completely and completely - no. Although the main functions that ordinary scientists and students use are easy. To remove red-eye, you don't necessarily need to use Photoshop: you can also use the free Xnview. So it is in the world of scientific programs. There is a replacement. And you can always find a program that will perform the operations you need.
As mentioned above, there are general programs, and to some extent they are analogues of Origin. There are highly specialized programs: they are designed to approximate data with user or standard functions; to digitize data from a printed graph in a journal or an old graph from a plotter. These programs will be discussed below.

Programs to replace Origin:


Programs for approximating data with user or standard functions:
PeakFit
Fityk 0.9.2
Programs for digitizing charts:
GetData (free for FSU)

There is a separate class of programs that uses the “command line”:

I wanted to compare the results of modeling a simple system (like a “body on a string”) using three different packages. The results were the same, but the comparison process itself turned out to be very interesting. I tried to explain the specific uses of each product, its strengths and weaknesses when calculating the dynamics of mechanical systems. In addition, information in Russian about using MapleSim was practically absent at the time of writing.

Features of numerical modeling of the dynamics of an experimental tether system using software based on the Python language

Scientific calculations in C++

  • Drawing graphs in C++. I was interested in a simple library for drawing two-dimensional graphs. As the search progressed, the problem became more precise, and this is what was discovered...
  • Integrating ordinary differential equations in C++. This requires libraries of integrators (solvers) and vector-matrix operations.
  • Linear algebra library in C++. Setting up Armadillo. Advantages: 1) fast; 2) there is everything I need, for example, row and column matrices, and not just vectors (rows and columns are inherited from matrices); 3) code quality (I can’t do that :)).
  • Libraries for working with sparse matrices. We select a library for working with sparse matrices. SLAE solvers are required and cross-platform is desirable. I am adding the information I found here.

Computer mathematics systems

  • Popular systems of computer mathematics (SCM) Maple.
  • Giac is a free SCM with Maple compatibility mode.
  • Maxima is a popular free SCM.

MATLAB

Lectures for students. Examples of programs. Projects.

A free cross-platform package for scientific and engineering calculations, similar in capabilities to MATLAB.

Visual modeling packages

Simulink, Xcos and others... Visual modeling allows you to create a computer model of a dynamic system in the form of a block diagram, without resorting to programming.

builds graphics and animation using commands. Performs approximation. Can be used as a visualization library and calculator (simpler than MATLAB, but much more powerful than the built-in system one). Has a full-fledged programming language. Small, smart, free and cross-platform :)

Computer simulation of movement using physics engines

Useful information on the operation of physics engines. Models in Box2d and Bullet.

We collect together PDE solvers and finite element analysis packages that use these solvers.

Program version: 3.01 Program size: 191 Kb Downloaded: 1682

Program version: 5 Program size: 773 Kb Downloaded: 1115

Program version: 2.17 Program size: 238 Kb Downloaded: 3124

Program version: 1.0 Program size: 187 Kb Downloaded: 648

Program version: 1.0 Program size: 755 Kb Downloaded: 1358

Program version: 1.1 Program size: 232 Kb Downloaded: 1471

Description: One of the ways to increase the reliability of the functioning of a complex system is the introduction of preventive measures aimed at bringing the system to an optimal state when various unfavorable factors appear. An automated experimental data analysis system is designed to determine the effectiveness of these activities. To carry out the analysis at the stage of planning the experiment, three main states of the system are formulated and studied: - reference - a state in which the system is able to function without failures indefinitely; - current - a state that occurs when various unfavorable factors appear that can lead to a failure in the operation of a complex system; - new - a state obtained as a result of the implementation of preventive measures aimed at countering the consequences of the emergence of unfavorable factors and bringing the system to an optimal (reference) state. The automated system formulates the logical conclusion using the mathematical apparatus of the theory of pattern recognition. First, deviations from the standard of the current and new states are determined. If the deviation of the new state is greater than the current one, then the preventive measure is clearly considered ineffective. Otherwise, the recognition algorithm is launched and the event is considered effective if, as a result of the analysis, the new state is classified as a reference state. The operation of the automated system was tested on data from an experimental study of the activities of the aircraft crew in various flight conditions, conducted at the Academy of Civil Aviation on the KTS TU-134 during one of the research projects. The conclusions drawn from the results of the study using classical methods of mathematical statistics (including expert assessment) completely coincided with the conclusions of the automated system.. Here you can

Program version: 1 Program size: 2.14 Mb Downloaded: 1920

Program version: demo Program size: 1.12 Mb Downloaded: 3647

Description: Nonparametric statistics module for all versions of StarCalc (Sun StarOffice) and Calc (OpenOffice.org) spreadsheets. Here you can

Symbolic, or, as they also say, computer mathematics or computer algebra, is a large section of mathematical modeling. In principle, programs of this kind can be classified as computer-aided design engineering programs. Thus, in the field of engineering design there are three main sections:

  • CAD - Computer Aided Design;
  • CAM - Computer Aided Manufacturing;
  • CAE - Computer Aided Engineering.

Today, serious design, urban planning and architecture, electrical engineering and a host of related industries, as well as technical educational institutions, can no longer do without computer-aided design (CAD), production and calculation systems. And mathematical packages are an integral part of the world of CAE systems, but this part cannot in any way be considered secondary, since some problems cannot be solved at all without the help of a computer. Moreover, today even theorists (the so-called pure, not applied mathematicians) resort to systems of symbolic mathematics, for example, to test their hypotheses.

Just some 10 years ago, these systems were considered purely professional, but the mid-90s became a turning point for the global market of CAD/CAM/CAE systems for mass use. Then, for the first time in a long time, packages for parametric modeling with industrial capabilities became available to users of personal computers. The creators of such systems took into account the requirements of a wide range of users and thus gave the opportunity to tens of thousands of engineers and mathematicians to use the latest scientific achievements in the field of CAD/CAM/CAE systems technology at their personal workstations.

So what can mathematical modeling programs do? Do they really require scientists to be able to program in certain algorithmic languages, debug programs, catch errors and spend a lot of time getting results? No, those days are long gone, and now mathematical packages use the principle of model construction, rather than the traditional “art of programming.” That is, the user only poses the problem, and the system finds the methods and algorithms for solving it itself. Moreover, such routine operations as opening parentheses, transforming expressions, finding roots of equations, derivatives and indefinite integrals are independently carried out by the computer in symbolic form, and with virtually no user intervention.

Modern mathematical packages can be used both as a regular calculator, and as a means to simplify expressions when solving any problems, and as a graphics or even sound generator! Interface with the Internet has also become standard, and HTML pages are now generated as part of the calculation process. Now you can solve a problem and at the same time publish the progress of its solution to your colleagues on your home page.

We can talk about mathematical modeling programs and possible areas of their application for a very long time, but we will limit ourselves to only a brief overview of the leading programs, indicating their common features and differences. Currently, almost all modern CAE programs have built-in symbolic calculation functions. However, Maple, MathCad, Mathematica and MatLab are considered the most well-known and suitable for mathematical symbolic calculations. But, while reviewing the main symbolic mathematics programs, we will also point out possible alternatives that are ideologically similar to one or another leading package.

So what do these programs do and how do they help mathematicians? The basis of a course in mathematical analysis in higher education is made up of such concepts as limits, derivatives, antiderivatives of functions, integrals of various types, series and differential equations. Anyone familiar with the basics of higher mathematics probably knows dozens of rules for finding limits, taking integrals, finding derivatives, etc. If you add to this the fact that to find most integrals you also need to remember the table of basic integrals, you get a truly enormous amount of information. And if you don’t practice solving such problems for some time, then a lot is quickly forgotten and to find, for example, a more complex integral, you will have to look in reference books. But taking integrals and finding limits in real work is not the main goal of calculations. The real goal is to solve problems, and calculations are just an intermediate step on the way to this solution.

Using the described software, you can save a lot of time and avoid many errors in calculations. Naturally, CAE systems are not limited to only these capabilities, but in this review we will focus on them.

Let us only note that the range of problems solved by such systems is very wide:

  • conducting mathematical research that requires calculations and analytical calculations;
  • development and analysis of algorithms;
  • mathematical modeling and computer experiment;
  • data analysis and processing;
  • visualization, scientific and engineering graphics;
  • development of graphic and calculation applications.

However, we note that since CAE systems contain operators for basic calculations, almost all algorithms that are not included in the standard functions can be implemented by writing your own program.

Mathematica (http://www.wolfram.com/)

  • 400-550 MB of disk space;
  • operating systems: Windows 98/Me/NT 4.0/2000/2003 Server/2003x64/XP/XP x64.

Wolfram Reseach, Inc., which developed the computer mathematics system Mathematica, is rightfully considered the oldest and most respected player in this field. The Mathematica package (current version 5.2) is widely used in calculations in modern scientific research and has become widely known in the scientific and educational environment. You could even say that Mathematica has significant functional redundancy (in particular, there is even the ability to synthesize sound).

However, it is unlikely that this powerful mathematical system, which claims to be a world leader, is needed by a secretary or even the director of a small commercial company, not to mention ordinary users. But, undoubtedly, any serious scientific laboratory or university department should have a similar program if they are seriously interested in automating the performance of mathematical calculations of any degree of complexity. Despite their focus on serious mathematical calculations, Mathematica class systems are easy to learn and can be used by a fairly wide category of users - university students and teachers, engineers, graduate students, researchers, and even students in mathematics classes in general education and special schools. All of them will find numerous useful possibilities for application in such a system.

At the same time, the program’s extensive functions do not overload its interface and do not slow down calculations. Mathematica consistently demonstrates high speed of symbolic transformations and numerical calculations. Of all the systems under consideration, the Mathematica program is the most complete and universal, however, each program has both its advantages and disadvantages. And most importantly, they have their own adherents, whom it is useless to convince of the superiority of another system. But those who seriously work with computer mathematics systems should use several programs, because only this guarantees a high level of reliability of complex calculations.

Note that in the development of various versions of the Mathematica system, along with the parent company Wolfram Research, Inc., other companies and hundreds of highly qualified specialists, including mathematicians and programmers, took part. Among them there are also representatives of the Russian mathematical school, which is respected and in demand abroad. Mathematica is one of the largest software systems and implements the most efficient calculation algorithms. These include, for example, the context mechanism, which eliminates the appearance of side effects in programs.

The Mathematica system is today considered as the world leader among computer symbolic mathematics systems for the PC, providing not only the ability to perform complex numerical calculations with the output of their results in the most sophisticated graphical form, but also carrying out particularly labor-intensive analytical transformations and calculations. Versions of the system for Windows have a modern user interface and allow you to prepare documents in the form of Notebooks. They combine source data, descriptions of problem solving algorithms, programs and solution results in a wide variety of forms (mathematical formulas, numbers, vectors, matrices, tables and graphs).

Mathematica was conceived as a system that would automate the work of scientists and analytical mathematicians as much as possible, so it deserves study even as a typical representative of elite and highly intelligent software products of the highest degree of complexity. However, it is of much greater interest as a powerful and flexible mathematical toolkit that can provide invaluable assistance to most scientists, university teachers, students, engineers and even schoolchildren.

From the very beginning, much attention was paid to graphics, including dynamic ones, and even multimedia capabilities - the reproduction of dynamic animation and sound synthesis. The range of graphics functions and options that change their effect is very wide. Graphics have always been the strength of various versions of the Mathematica system and provided them with leadership among computer mathematics systems.

As a result, Mathematica quickly took a leading position in the market for symbolic mathematical systems. Particularly attractive are the system’s extensive graphical capabilities and the implementation of a Notebook-type interface. At the same time, the system provided a dynamic connection between document cells in the style of spreadsheets, even when solving symbolic problems, which fundamentally and advantageously distinguished it from other similar systems.

By the way, the central place in Mathematica-class systems is occupied by a machine-independent core of mathematical operations, which allows the system to be transferred to various computer platforms. To transfer the system to another computer platform, a Front End software interface processor is used. It is he who determines what type of user interface the system has, that is, the interface processors of Mathematica systems for other platforms may have their own nuances. The kernel is made compact enough so that any function can be called from it very quickly. To expand the set of functions, use the Library and a set of Add-on Packages. Extension packages are prepared in the Mathematica systems' own programming language and are the main means for developing system capabilities and adapting them to solve specific classes of user problems. In addition, the systems have a built-in electronic help system - Help, which contains electronic books with real examples.

Thus, Mathematica is, on the one hand, a typical programming system based on one of the most powerful problem-oriented high-level functional programming languages, designed to solve various problems (including mathematical ones), and on the other hand, an interactive system for solving most mathematical problems. tasks online without traditional programming. Thus, Mathematica as a programming system has all the capabilities to develop and create almost any control structures, organize input-output, work with system functions and service any peripheral devices, and with the help of expansion packages (Add-ons) it becomes possible to adapt to the needs of any user (although the average user may not need these programming tools - he will get by with the built-in mathematical functions of the system, which amaze even experienced mathematicians with their abundance and variety).

The disadvantages of the Mathematica system include only a very unusual programming language, which, however, is facilitated by a detailed help system.

Simpler but ideologically similar alternatives to Mathematica include packages such as Maxima ( /) and Kalamaris (developer.kde.org/~larrosa/kalamaris.html).

Note that the Maxima system is a non-commercial open source project. Maxima uses a language similar to Mathematica to do math work, and the graphical interface follows the same principles. Initially, the program was called Xmaxima and was created for UNIX systems.

In addition, Maxima now has an even more powerful, efficient, and user-friendly cross-platform graphical interface called Wxmaxima (http://wxmaxima.sourceforge.net). And although this project currently exists only in beta version, it is gradually turning into a very serious alternative to commercial systems.

As for the Kalamaris program, it is also a new project that has an approach and ideology similar to the Mathematica system. The project is not yet completed, but it is also a good free alternative to such a commercial monster as Mathematica.

Maple (http://www.maplesoft.com/)

Minimum system requirements:

Processor Pentium III 650 MHz;

400 MB of disk space;

Operating systems: Windows NT 4 (SP5)/98/ME/2000/2003 Server/XP Pro/XP Home.

The Maple program (latest version 10.02) is a kind of patriarch in the family of symbolic mathematics systems and is still one of the leaders among universal symbolic computing systems. It provides the user with a convenient intellectual environment for mathematical research at any level and is especially popular in the scientific community. Note that the symbolic analyzer of the Maple program is the most powerful part of this software, so it was borrowed and included in a number of other CAE packages, such as MathCad and MatLab, as well as in the Scientific WorkPlace and Math Office for Word packages for preparing scientific publications .

The Maple package is a joint development of the University of Waterloo (Ontario, Canada) and the ETHZ, Zurich, Switzerland. A special company was created for its sale - Waterloo Maple, Inc., which, unfortunately, became more famous for the mathematical study of its project than for the level of its commercial implementation. As a result, the Maple system was previously available primarily to a narrow circle of professionals. Now this company works together with the company MathSoft, Inc., which is more successful in commerce and in developing the user interface of mathematical systems. - the creator of the very popular and widespread systems for numerical calculations MathCad, which have become the international standard for technical calculations.

Maple provides a convenient environment for computer experiments, during which different approaches to a problem are tried, particular solutions are analyzed, and, if programming is necessary, fragments that require special speed are selected. The package allows you to create integrated environments with the participation of other systems and universal high-level programming languages. When the calculations have been made and you need to formalize the results, you can use the tools of this package to visualize the data and prepare illustrations for publication. To complete the work, all that remains is to prepare printed material (report, article, book) directly in the Maple environment, and then you can proceed to the next study. The work is interactive - the user enters commands and immediately sees the result of their execution on the screen. At the same time, the Maple package is not at all similar to a traditional programming environment, which requires strict formalization of all variables and actions with them. Here, the selection of suitable types of variables is automatically ensured and the correctness of operations is checked, so in the general case there is no need to describe variables and strictly formalize the record.

The Maple package consists of a core (procedures written in C and well optimized), a library written in the Maple language, and a developed external interface. The kernel performs most of the basic operations, and the library contains many commands - procedures that are executed in interpretive mode.

The Maple interface is based on the concept of a worksheet, or document, containing input/output lines and text, as well as graphics.

The package is processed in interpreter mode. In the input line, the user specifies a command, presses the Enter key, and receives the result - an output line (or lines) or a message about an erroneously entered command. An invitation is immediately issued to enter a new command, etc.

Maple interface

Working windows (sheets) of the Maple system can be used either as interactive environments for solving problems, or as a system for preparing technical documentation. Executive groups and spreadsheets simplify user interaction with the Maple engine by serving as the primary means by which requests to perform specific tasks and output results are sent to the Maple system. Both of these types of primary tools allow Maple command input.

The Maple system allows you to enter spreadsheets containing both numbers and symbols. They combine the mathematical capabilities of Maple with the familiar row and column format of traditional spreadsheets. Maple spreadsheets can be used to create formula tables.

To make it easier to document and organize calculation results, there are options for breaking into paragraphs, sections, and adding hyperlinks. A hyperlink is a navigation aid. With one click you can go to another point within the worksheet, to another worksheet, to a help page, to a worksheet on a Web server, or to any other Web page.

Worksheets can be organized hierarchically into sections and subsections. Sections and subsections can be expanded or collapsed. Maple, like other text editors, supports a bookmark option.

Computing in Maple

The Maple system can be used at the most basic level of its capabilities - as a very powerful calculator for calculations using given formulas, but its main advantage is the ability to perform arithmetic operations in symbolic form, that is, the way a person does it. When working with fractions and roots, the program does not convert them to decimal form during the calculations, but makes the necessary reductions and transformations into a column, which allows you to avoid rounding errors. To work with decimal equivalents, the Maple system has a special command that approximates the value of an expression in floating point format. The Maple system calculates finite and infinite sums and products, performs computational operations with complex numbers, easily reduces a complex number to a number in polar coordinates, calculates the numerical values ​​of elementary functions, and also knows many special functions and mathematical constants (such as "e" " and "pi"). Maple supports hundreds of special functions and numbers found in many areas of mathematics, science, and engineering. Here are just a few of them:

  • error function;
  • Euler constant;
  • exponential integral;
  • elliptic integral function;
  • gamma function;
  • zeta function;
  • Heaviside step function;
  • Dirac delta function;
  • Bessel and modified Bessel functions.

The Maple system offers various ways to represent, reduce, and transform expressions, such as operations such as simplifying and factoring algebraic expressions and reducing them to different forms. Thus, Maple can be used to solve equations and systems.

Maple also has many powerful tools for evaluating expressions with one or more variables. The program can be used to solve problems in differential and integral calculus, calculus of limits, series expansions, summation of series, multiplication, integral transformations (such as the Laplace transform, Z-transform, Mellin or Fourier transform), as well as to study continuous or piecewise continuous functions.

Maple can calculate the limits of functions, both finite and tending to infinity, and also recognizes uncertainties in the limits. This system can solve a variety of ordinary differential equations (ODEs) as well as partial differential equations (PDEs), including initial condition problems (IVPs) and boundary condition problems (BVPs).

One of the most commonly used software packages in Maple is the linear algebra package, which contains a powerful set of commands for working with vectors and matrices. Maple can find eigenvalues ​​and eigenvectors of operators, compute curvilinear coordinates, find matrix norms, and compute many different types of matrix decompositions.

For technical applications, Maple includes reference books of physical constants and units of physical quantities with automatic conversion of formulas. Maple is especially effective for teaching math. The highest intelligence of this system of symbolic mathematics is combined with excellent mathematical numerical modeling tools and simply stunning possibilities for graphical visualization of solutions. Systems such as Maple can be used both in teaching and for self-education when studying mathematics from the very beginning to the top.

Graphics in Maple

The Maple system supports both 2D and 3D graphics. Thus, you can represent explicit, implicit and parametric functions, as well as multidimensional functions and simple data sets in graphical form and visually look for patterns.

Maple graphical tools allow you to build two-dimensional graphs of several functions at once, create graphs of conformal transformations of functions with complex numbers, and build graphs of functions in logarithmic, double logarithmic, parametric, phase, polar and contour forms. You can graphically represent inequalities, implicit functions, solutions of differential equations, and root hodographs.

Maple can generate surfaces and curves in 3D, including surfaces defined by explicit and parametric functions, as well as solutions to differential equations. At the same time, it can be presented not only in a static form, but also in the form of two- or three-dimensional animation. This feature of the system can be used to display processes occurring in real time.

Note that in order to prepare the result and document research, the system has all the possibilities for choosing fonts for names, inscriptions and other text information on the graphs. In this case, you can vary not only the fonts, but also the brightness, color and scale of the graph.

Specialized Applications

A comprehensive set of powerful Maple PowerTools and packages for areas such as finite element analysis (FEM), nonlinear optimization, and more, fully satisfy users with a university mathematics background. Maple also includes packages of routines for solving problems of linear and tensor algebra, Euclidean and analytical geometry, number theory, probability theory and mathematical statistics, combinatorics, group theory, integral transformations, numerical approximation and linear optimization (simplex method), as well as problems financial mathematics and many, many others.

The Finance software package is designed for financial calculations. With its help, you can calculate the current and accumulated amount of annuity, total annuity, amount of life annuity, total life annuity and interest income on bonds. You can build an amortization table, determine the actual rate amount for compound interest, and calculate the current and future fixed amount for a specific rate and compound interest.

Programming

The Maple system uses a 4th generation procedural language (4GL). This language is specifically designed for the rapid development of mathematical routines and custom applications. The syntax of this language is similar to the syntax of universal high-level languages: C, Fortran, Basic and Pascal.

Maple can generate code that is compatible with programming languages ​​such as Fortran or C, and with the LaTeX typesetting language, which is very popular in the scientific world and is used for publishing. One of the advantages of this property is the ability to provide access to specialized numerical programs that maximize the speed of solving complex problems. For example, using the Maple system, you can develop a certain mathematical model, and then use it to generate C code that matches that model. The 4GL language, specially optimized for the development of mathematical applications, allows you to shorten the development process, and Maplets elements or Maple documents with built-in graphics components help you customize the user interface.

At the same time, in the Maple environment you can prepare documentation for the application, since the package’s tools allow you to create professional-looking technical documents containing text, interactive mathematical calculations, graphs, drawings and even sound. You can also create interactive documents and presentations by adding buttons, sliders and other components, and finally publish documents on the Internet and deploy interactive computing on the Web using the MapleNet server.

Internet compatibility

Maple is the first universal math package to offer full support for the MathML 2.0 standard, which governs both the look and feel of mathematics on the Web. This exclusive feature makes the current version of MathML the primary tool for Internet mathematics and also sets a new level of multi-user compatibility. TCP/IP provides dynamic access to information from other Internet resources, such as real-time financial analysis or weather data.

Development prospects

The latest versions of Maple, in addition to additional algorithms and methods for solving mathematical problems, have received a more convenient graphical interface, advanced visualization and charting tools, as well as additional programming tools (including compatibility with universal programming languages). Starting with the ninth version, import of documents from the Mathematica program was added to the package, and definitions of mathematical and engineering concepts were introduced into the help system and navigation through the help pages was expanded. In addition, the printing quality of formulas has been improved, especially when formatting large and complex expressions, and the size of MW files for storing Maple working documents has been significantly reduced.

Thus, Maple is perhaps the most well-balanced system and the undisputed leader in symbolic computing capabilities for mathematics. At the same time, the original symbolic engine is combined here with an easy-to-remember structured programming language, so that Maple can be used for both small tasks and large projects.

The only disadvantages of the Maple system include its somewhat “thoughtful” nature, which is not always justified, as well as the very high cost of this program (depending on the version and set of libraries, its price reaches several tens of thousands of dollars, although students and researchers are offered cheap versions - for several hundred dollars).

The Maple package is widely distributed in universities of leading scientific powers, research centers and companies. The program is constantly evolving, incorporating new areas of mathematics, acquiring new functions and providing a better environment for research work. One of the main directions of development of this system is to increase the power and reliability of analytical (symbolic) calculations. This direction is most widely represented in Maple. Already today, Maple can perform complex analytical calculations that are often beyond the capabilities of even experienced mathematicians. Of course, Maple is not capable of brilliant guesses, but the system performs routine and mass calculations brilliantly. Another important area is increasing the efficiency of numerical calculations. As a result, the prospect of using Maple in numerical modeling and in performing complex calculations, including with arbitrary precision, has significantly increased. And finally, close integration of Maple with other software is another important direction in the development of this system. The Maple symbolic computing kernel is already included in a number of computer mathematics systems - from systems for a wide range of users such as MathCad to one of the best systems for numerical calculations and modeling, MatLab.

All these features, combined with a well-designed and user-friendly user interface and a powerful help system, make Maple a first-class software environment for solving a wide variety of mathematical problems, capable of helping users effectively solve educational and real-world scientific and technical problems.

Alternative packages

Simpler, but ideologically similar alternatives to the Maple program include such packages as Derive (http://www.chartwellyorke.com/derive.html), Scientific WorkPlace (http://www.mackichan.com/) and YaCaS (www.xs4all.nl/~apinkus/yacas.html).

As we have already said, Scientific WorkPlace (SWP, current version 5.5) was initially developed as a scientific text editor, allowing you to easily type and edit mathematical formulas. However, over time, MacKichan Software, Inc. (developer of Scientific WorkPlace) has licensed the Maple symbol engine from Waterloo Maple, Inc., and the program now combines an easy-to-use math word processor and a computer algebra system in one environment. With built-in computer algebra, you can perform calculations right in the document. Of course, this program does not have the same capabilities as Maple, but it is small and easy to use.

As for YaCaS (an acronym for Yet Another Computer Algebra System), it is a free cross-platform alternative to Maple, built on the same principles. The powerful and highly efficient YaCaS engine is fully implemented in C++ under an open license (OpenSource). The interface, of course, is poorer and simpler than that of its venerable competitors, but quite convenient.

But the small commercial mathematical system Derive (current version 6.1) has existed for quite a long time, but, of course, cannot be considered as a full-fledged alternative to Maple, although it is still attractive to this day for its undemanding nature of PC hardware resources. Moreover, when solving problems of moderate complexity, it demonstrates even higher performance and greater reliability of the solution than the first versions of the Maple and Mathematica systems. However, it is difficult for the Derive system to seriously compete with these systems - both in terms of the abundance of functions and rules of analytical transformations, and in terms of computer graphics capabilities and the convenience of the user interface. For now, Derive is more of an entry-level computer algebra training system.

And although the latest version of Derive 6 for Windows already has a modern, user-friendly interface, it is in many ways inferior to the sophisticated interface of its venerable competitors. And in terms of the ability to graphically visualize calculation results, Derive generally lags far behind its competitors.

MatLab (http://www.mathworks.com/)

Minimum system requirements:

  • processor Pentium III, 4, Xeon, Pentium M; AMD Athlon, Athlon XP, Athlon MP;
  • 256 MB of RAM (512 MB recommended);
  • 400 MB of disk space (only for the MatLab system itself and its Help);
  • operating system Microsoft Windows 2000 (SP3)/XP.

The MatLab system is a mid-level product designed for symbolic mathematics, but is designed for widespread use in the CAE field (that is, it is also strong in other areas). MatLab is one of the oldest, carefully developed and time-tested systems for automating mathematical calculations, built on an advanced representation and application of matrix operations. This is reflected in the very name of the system - MATrix LABoratory, that is, matrix laboratory. However, the syntax of the system's programming language is thought out so carefully that this orientation is almost not felt by those users who are not directly interested in matrix calculations.

Despite the fact that MatLab was originally intended exclusively for computing, in the process of evolution (and now version 7 has already been released), in addition to excellent computing tools, a symbolic transformation kernel was purchased from Waterloo Maple under a license for MatLab, and libraries appeared that provide functions in MatLab that are unique to mathematical packages. For example, the well-known Simulink library, implementing the principle of visual programming, allows you to build a logical diagram of a complex control system from just standard blocks, without writing a single line of code. After constructing such a circuit, you can analyze its operation in detail.

The MatLab system also has extensive programming capabilities. Its C Math library (MatLab compiler) is object-based and contains over 300 data processing procedures in the C language. Inside the package, you can use both MatLab procedures and standard C language procedures, which makes this tool a powerful tool for developing applications (using the C compiler Math, you can embed any MatLab procedures into ready-made applications).

The C Math library allows you to use the following categories of functions:

  • operations with matrices;
  • comparison of matrices;
  • solving linear equations;
  • expansion of operators and search for eigenvalues;
  • finding the inverse matrix;
  • search for a determinant;
  • matrix exponential calculation;
  • elementary mathematics;
  • functions beta, gamma, erf and elliptic functions;
  • fundamentals of statistics and data analysis;
  • searching for roots of polynomials;
  • filtering, convolution;
  • fast Fourier transform (FFT);
  • interpolation;
  • operations with strings;
  • file I/O operations, etc.

Moreover, all MatLab libraries are distinguished by high speed of numerical calculations. However, matrices are widely used not only in such mathematical calculations as solving problems of linear algebra and mathematical modeling, calculation of static and dynamic systems and objects. They are the basis for the automatic compilation and solution of equations of state of dynamic objects and systems. It is the universality of the matrix calculus apparatus that significantly increases interest in the MatLab system, which has incorporated the best achievements in the field of quickly solving matrix problems. Therefore, MatLab has long gone beyond the scope of a specialized matrix system, becoming one of the most powerful universal integrated systems of computer mathematics.

To visualize the simulation, the MatLab system has the Image Processing Toolbox library, which provides a wide range of functions that support visualization of calculations performed directly from the MatLab environment, magnification and analysis, as well as the ability to build image processing algorithms. Advanced graphics library techniques coupled with the MatLab programming language provide an open, extensible system that can be used to create custom applications suitable for graphics processing.

The main tools of the Image Processing Tollbox library:

  • building filters, filtering and image restoration;
  • image enlargement;
  • analysis and statistical processing of images;
  • identification of areas of interest, geometric and morphological operations;
  • color manipulation;
  • two-dimensional transformations;
  • processing unit;
  • visualization tool;
  • writing/reading graphic files.

Thus, the MatLab system can be used for image processing by constructing its own algorithms that will work with graphics arrays as data matrices. Because MatLab is optimized for working with matrices, the result is ease of use, high speed, and cost-effectiveness of performing image operations.

Thus, the MatLab program can be used to restore damaged images, pattern recognition of objects in images, or to develop any of your own original image processing algorithms. The Image Processing Tollbox library simplifies the development of high-precision algorithms because each of the functions included in the library is optimized for maximum speed, efficiency and accuracy of calculations. In addition, the library provides the developer with numerous tools for creating their own solutions and for implementing complex graphics processing applications. And when analyzing images, having instant access to powerful visualization tools helps you instantly see the effects of enlargement, reconstruction, and filtering.

Among other libraries of the MatLab system, one can also note the System Identification Toolbox - a set of tools for creating mathematical models of dynamic systems based on observed input/output data. A special feature of this toolkit is the presence of a flexible user interface that allows you to organize data and models. The System Identification Toolbox library supports both parametric and non-parametric methods. The system's interface facilitates data pre-processing, working with the iterative process of creating models to obtain estimates and highlight the most significant data. Quickly perform, with minimal effort, operations such as opening/saving data, highlighting the area of ​​possible data values, removing errors, and preventing data from leaving its characteristic level.

Data sets and identified models are organized graphically, making it easy to recall the results of previous analyzes during the system identification process and select the next possible steps in the process. The main user interface organizes the data to show the result already obtained. This facilitates quick comparisons of model estimates, allows you to graphically highlight the most significant models and examine their performance.

And when it comes to mathematical calculations, MatLab provides access to a huge number of routines contained in the NAG Foundation Library of Numerical Algorithms Group Ltd (the toolkit has hundreds of functions from various areas of mathematics, and many of these programs were developed by well-known specialists in the world). This is a unique collection of implementations of modern numerical methods of computer mathematics, created over the past three decades. Thus, MatLab has absorbed experience, rules, and methods of mathematical calculations accumulated over thousands of years of development of mathematics. The extensive documentation supplied with the system alone can be considered a fundamental multi-volume electronic reference book on mathematical software.

Among the shortcomings of the MatLab system, we can note the low integration of the environment (a lot of windows, which are better to work with on two monitors), a not very clear help system (and yet the volume of proprietary documentation reaches almost 5 thousand pages, which makes it difficult to review) and specific code editor for MatLab programs. Today, the MatLab system is widely used in technology, science and education, but still it is more suitable for data analysis and organizing calculations than for purely mathematical calculations.

Therefore, to carry out analytical transformations in MatLab, the Maple symbolic transformation kernel is used, and from Maple you can access MatLab for numerical calculations. It is not without reason that symbolic mathematics Maple has become an integral part of a number of modern packages, and numerical analysis from MatLab and toolboxes are unique. Nevertheless, the mathematical packages Maple and MatLab are intellectual leaders in their classes, they are models that determine the development of computer mathematics.

Simpler but ideologically similar alternatives to the MatLab program include packages such as Octave (www.octave.org), KOctave (bubben.homelinux.net/~matti/koctave/) and Genius (www.jirka.org/genius .html).

Octave is a numerical calculation program that is highly compatible with MatLab. The interface of the Octave system, of course, is poorer, and it does not have such unique libraries as MatLab, but it is a very easy-to-learn program that does not require system resources. Octave is distributed under an open source license (OpenSource) and can be a good help for educational institutions.

The KOctave program is essentially a more advanced graphical interface for the Octave system. As a result of using KOctave, the Octave system becomes completely similar to MatLab.

The simple mathematical program Genius, naturally, cannot compete in power with its famous competitors, but its ideology of mathematical transformations is similar to MatLab and Maple. Genius is also distributed under an open source license (OpenSource). It has its own GEL language, a developed Genius Math Tool and a good system for preparing documents for publication (using design languages ​​such as LaTeX, Troff (eqn) and MathML). A very good graphical interface of the Genius program will make working with it simple and convenient.

MathCad (http://www.mathsoft.com/, http://www.mathcad.com/)

Minimum system requirements:

  • Pentium II processor or higher;
  • 128 MB RAM (256 MB or more recommended);
  • 200-400 MB of disk space;
  • operating systems: Windows 98/Me/NT 4.0/2000/XP.

In contrast to the powerful MatLab package, which is focused on highly efficient calculations in data analysis, the MathCad program (current version 13) is rather a simple but advanced mathematical text editor with extensive symbolic calculation capabilities and an excellent interface. MathCad does not have a programming language as such, and the symbolic calculation engine is borrowed from the Maple package. But the interface of the MathCad program is very simple, and the visualization capabilities are rich. All calculations here are carried out at the level of visual recording of expressions in commonly used mathematical form. The package has good tips, detailed documentation, a training function, a number of additional modules and decent technical support from the manufacturer (as you can see from the product version, this program is updated more often than others mentioned in this review, although the year of release of the first version is approximately the same - 1996-1997). However, so far the mathematical capabilities of MathCad in the field of computer algebra are much inferior to the systems Maple, Mathematica, MatLab and even the little Derive. However, many books and training courses have been published using the MathCad program, including in Russia. Today, this system has literally become an international standard for technical computing, and even many schoolchildren are learning and using MathCad.

For a small amount of calculations, MathCad is ideal - here everything can be done very quickly and efficiently, and then the work can be formatted in the usual form (MathCad provides ample opportunities for formatting the results, even publishing them on the Internet). The package has convenient data import/export capabilities. For example, you can work with Microsoft Excel spreadsheets directly inside a MathCad document.

In general, MathCad is a very simple and convenient program that can be recommended to a wide range of users, including those who are not very knowledgeable in mathematics, and especially those who are just learning its basics.

Cheaper, simpler, but ideologically similar alternatives to the MathCad program include such packages as the already mentioned YaCaS, the commercial MuPAD system (http://www.mupad.de/) and the free KmPlot program (http://edu.kde .org/kmplot/).

The KmPlot program is distributed under an open source license (OpenSource). It is very easy to learn and is suitable even for schoolchildren.

As for the MuPAD program, it is a modern integrated system of mathematical calculations, with which you can perform numerical and symbolic transformations, as well as draw two-dimensional and three-dimensional graphs of geometric objects. However, in terms of its capabilities, MuPAD is significantly inferior to its venerable competitors and is, rather, an entry-level system designed for training.

Conclusion

Despite the fact that in the field of computer mathematics there is not such diversity as, say, in the field of computer graphics, behind the apparent limitations of the market for mathematical programs, their truly limitless possibilities are hidden! As a rule, CAE systems cover almost all areas of mathematics and engineering calculations.

Once upon a time, symbolic mathematics systems were aimed exclusively at a narrow circle of professionals and worked on large computers (mainframes). But with the advent of PCs, these systems were redesigned for them and brought to the level of mass serial software systems. Nowadays, symbolic mathematics systems of various calibers coexist on the market - from the MathCad system designed for a wide range of consumers to the computer monsters Mathematica, MatLab and Maple, which have thousands of built-in and library functions, extensive capabilities for graphical visualization of calculations and developed tools for preparing documentation.

Note that almost all of these systems work not only on personal computers equipped with popular Windows operating systems, but also on Linux, UNIX, Mac OS operating systems, as well as on PDAs. They have long been familiar to users and are widespread on all platforms - from handhelds to supercomputers.







2024 gtavrl.ru.