• Download scientific programs for your computer. Applications for engineering and scientific calculations as tools for testing PC performance. Features of numerical modeling of the dynamics of an experimental tether system using software

    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 requiring 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 Mathematica computer mathematics system, is rightfully considered the oldest and most established 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 (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, 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 extension 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, which is why 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 variable types is automatically ensured and the correctness of the operations is checked, so in the general case there is no need to describe variables and strictly formalize the recording.

    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 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 converts 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 means of mathematical numerical modeling 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 typing 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 packages such 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 abbreviation for the expression 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 been around for quite some 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;
    • basics 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 Maple symbolic mathematics 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 their 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.

    As cheaper, simpler, but ideologically similar alternatives to the MathCad program, we can note such packages as the already mentioned YaCaS, the commercial system MuPAD (http://www.mupad.de/) and the free program KmPlot (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 the PC, 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.

    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 versatile 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”:

    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 examined: - 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

    The most “variegated” in composition, functionality, number of names and closest to the end user is, of course, the class of application programs. The most obvious thing for application programs is their systematization according to their functional purpose and scope. From a functionality point of view, application software can be divided into several large groups:

    □ office applications;

    □ applications for project management;

    □ applications for working with a local network;

    □ Internet applications;

    □ programs for scientific research and calculations;

    □ educational programs;

    □ programs for organizing the work of educational institutions;

    □ programs for libraries;

    □ programs for working with multimedia;

    □ accounting programs;

    □ financial programs;

    □ design programs;

    □ software for business;

    □ software for government agencies;

    □ safety programs;

    □ programs for personal planning;

    Only the main directions in which user application software is functionally developing are listed here. It is impossible to cover absolutely everything for the simple reason that today almost every human activity, every area of ​​his life is supported by one type of software or another. Let's take a closer look at the main categories.

    15.6.1. Office applications

    Office applications include both ready-made office packages (proprietary Microsoft Office or open OpenOffice.org), and individual programs related to the functions of entering, storing, processing and presenting documents in electronic form: various text editors and word processors, spreadsheets , programs for creating presentations, graphs and diagrams, programs for individual and group planning. Office applications have penetrated so deeply into any activity that today a desktop computer is unthinkable without an office suite, which is perceived as an integral part of the computer.

    Each office application included in the office suites has its own purpose and its own set of necessary and additional functions.

    Word processor

    A word processor is an application whose main purpose is to create and edit text documents. Necessary for a modern word processor are the functions of entering text and performing editing operations on the text (copying, cutting, deleting and pasting text fragments into a specified location), as well as saving text in a file on physical media.

    Additional functions supported by modern word processors have long become the de facto standard for creating software of this class:

    □ text formatting - changing the font type and parameters (character and background color, size, strikethrough, underline, distance between characters and other parameters);

    □ paragraph formatting - changing alignment parameters, numbering, creating lists;

    □ page formatting - pagination, automatic and random, changing the number of columns, creating sections;

    □ search and replacement of fragments in the document text;

    □ document printing;

    □ forwarding a document to the addressee via email;

    □ means of collaboration on documents (review);

    □ insertion of images, graphs and diagrams into a document;

    □ automation of document processing - means of inserting a table of contents, footnotes, quotations, bibliography, means of forming the document structure;

    □ document export to various formats - export to the cross-platform HTML format is especially important.

    □ means of programming functions in a built-in programming language.

    In Fig. Figure 15.4 shows the windows of two word processors. The first (Word) is included in the standard Microsoft Office software product, the second (Writer) is included in the free software product OpenOffice.org. It can be seen that the two main toolbars of these word processors coincide functionally almost completely.

    File drak §id insert Fve«at |zbyascha Service Qw* 3 Help

    : 1¾ Ii - OI b:< Щ^ ": # i:.-, - т-sm lii щ (Г5% "13 # *

    ; ; i ,„ 3 2 р 3 (зШШШ Ш» а» Si "г 0 Д♦ - И,** £


    OpenOffice.org writez\


    The main function of a spreadsheet is to store data in typed cells that allow you to access a data unit by addressing it by column (row) name (number), and also process the data by performing arithmetic operations on it or passing it as arguments to built-in functions.

    Additional functions of a spreadsheet are almost similar to the functions of a word processor: text formatting, inserting images and various objects, style and color formatting of text, background and table grid, both unconditional (formatting a selected fragment) and conditional (depending on the values ​​in those or other cells). In addition, additional functions of spreadsheets include expanding their functionality through specialized add-ons designed to perform statistical, financial, economic and scientific calculations and experiments with data. As with text documents, the ability to export to different formats, especially HTML, and print tables is important for spreadsheets.

    ! "Ariaicyr...................................

    jj ||"& Jka gm Bgra"" Fotsnag Cgpafte £tte Qkmo Help

    14; w&4",t; " . f" " $ . "t" *

    15 j f^"".......... P 7 ".......... 3 Ж к a * £ Уь Ai % %%%


    shShNKK,
    G
    Iiiiiii

    Rice. 15.5. Spreadsheets

    The free Calc program and the proprietary Excel program are almost the same in functionality. Anything you can do in Microsoft Excel can be done in Calc. Documents created in Calc can be saved in Excel format, and documents created in Excel can be opened in Calc. However, we cannot speak of complete identity, as well as complete compatibility: some operations (for example, correct restoration of links to other sheets and workbooks) that Microsoft Excel supports are not supported in Calc. There is also incompatibility at the application programming level: the built-in languages ​​in these two programs are different, so Microsoft Excel macros in Calc will not work.

    In order not to repeat ourselves further, it should be noted that this kind of incomplete compatibility, both in functionality and in built-in automation mechanisms, is characteristic of all programs of two packages: Microsoft Office and OpenOffice. Org.

    Presentation programs

    Presentations did not immediately become an integral part of the office suite. The first office suites included only word processors and spreadsheets; in some cases, office suites included a tool for creating document binders and some others. However, as multimedia and projector equipment developed, the need for a concise, visual, beautifully designed, illustrated with diagrams and graphs presentation of information became increasingly clear. This is how the genre of computer presentation arose, and with it programs for creating presentations.

    The main functionality of the presentation creation program should be considered the ability to create, design and play computer presentations in various modes.

    Additional functionality includes the following:

    □ the presence of a large number and variety of visual and sound effects reproduced during the transition between slides and from one part of the slide to another;

    □ creation of standalone presentations, that is, presentations that are reproduced independently of the base program (this can be an executable file, as well as a flash or pdf file);

    □ a developed system of templates and a rich collection of images;

    □ interaction with presentation equipment;

    □ the ability to implement complex multimedia objects and easily manage them.

    In Fig. Figure 5.6 shows programs for creating Power Point presentations from the Microsoft Office package and Impress from the OpenOffice.org product.


    Rice. 15.6. Creating presentations

    15.6.2. Project management programs

    One of the popular areas of activity for managers at various levels of management in business today is project management. The project management method, in which a set of interrelated business tasks is considered as a single project with a precisely defined time-bound beginning and end, budget, staff of performers, and complete distribution of tasks, has proven to be effective in many respects: it is well algorithmized, standardized, and is easily portable from one place to another. spheres to another.

    Not surprisingly, project management tools for both senior and mid-level managers are a fairly common class of software. The most famous project management software product is certainly Microsoft Project in both desktop and server versions. This product allows you to manage both individual small and medium-sized projects, as well as packages of enterprise-level projects combined into a portfolio.

    The following capabilities are required for project management:

    □ determine (set) resources, including material, financial, human, time, etc.;

    □ define work (tasks), establishing their hierarchy and interconnection;

    □ develop and track project budgets for different sections (time, resources, work);

    □ effectively distribute resources and work, track and mark the completion of tasks and the expenditure of resources;

    □ receive project progress reports in various forms (Gantt charts, schedule, budgets, weekly or daily presentations);

    □ flexibly rebuild created project configurations.

    15.6.3. Client programs for working with Internet services

    The most famous Internet service, which makes up the World Wide Web (WWW), operates over the HTTP protocol. This service is used by programs called Internet browsers, or Internet browsing programs. The task of the Internet browser is to load Internet pages from a given address, display them correctly, ensure user interaction with active elements of the Internet page, maintain the required level of security and protect the user’s confidential information. The most popular programs of this class today are Microsoft Internet Explorer and the free software product Mozilla FireFox; the popularity of another browser program, Google-Chrome, is rapidly growing. The windows of these three browsers are shown in Fig. 15.7.

    The figure shows that not a single browser, at least externally, has introduced any special innovations. It should be noted that the open development model in which Mozilla FireFox is created has its advantages: during the existence of this program, tens of thousands of additional modules have been developed for it by volunteers. These modules significantly expand the functionality of the Mozilla FireFox browser. Some modules allow you to completely change the way information is presented inside the program window (Fig. 15.8).


    The FTP network protocol is designed to receive files from IP servers, while FTP servers act as a kind of file storage. Today there are practically no special client applications that work with this protocol, since all Internet browsers are capable of reading FTP directories and downloading files from them to the user’s computer. In Fig. 15.9 you can see what the same ftp directory looks like in the Konqueror file manager and in Internet Explorer.


    The figure shows that modern tools for working with ftp servers reproduce remote network folders in the same way as local directories on a disk, and if the user has the appropriate rights, then the difference between network and local files is practically erased: you can open, edit, cut, copy and drag files and folders from your hard drive to a remote server and back.

    E-mail

    Email is one of the most common means of exchanging personal and business information on the Internet. There are a lot of software for working with email. Among the most famous email clients with a graphical user interface, it is worth noting, apparently, the commercial programs Microsoft Outlook and The Bat, as well as the free program Mozilla Thunderbird. In Fig. 15.10 you can see Microsoft Outlook and Mozilla Thunderbird windows.


    File Orda-^ &1L Sdyns Duist&on 4003" yipaftca

    ^ Г"/ У ^owerrtibsees ;^orrmw*>iroftf$fcb Ш


    Rice. 15.10. Email clients for receiving and sending emails

    For a modern email program, the ability to receive and send messages alone is not enough to withstand competition in the market for similar programs. Additionally, the following features must be supported:

    □ receiving and sending messages not only in text format, but also in other formats (for example, HTML);

    □ sending attachments;

    □ reproduction of multimedia content;

    □ search within the headers, topics and text of messages;

    □ maintaining a database of addresses;

    □ creation of additional folders;

    □ performing automatic operations on incoming mail, including putting it into different folders depending on the assigned filters;

    □ protection from dangerous content contained in a message or attachment.

    Instant messaging services

    Instant messaging services (Internet messengers) have been unprecedentedly popular among Internet users since their inception to this day. The first and most famous is the ICQ service. A little less known is the format and applications that support the Jabber protocol. Mobile phone number and ICQ number have become as integral personal identifiers as a passport number. Instant messaging services allow you to exchange messages in one window and simultaneously send files to each other
    (for example, photographs). Among the additional functions that instant messaging services implement, we can highlight such as organizing conferences and group chat (simultaneous conversation of several people displayed in one window).

    Today there are quite a lot of programs that support instant messages, and all of them are either free or free, but with advertising. In Fig. Figure 15.11 shows the windows of the Kopete and QIP programs, which simultaneously support both Jabber and ICQ formats.


    Rice. 15.11. Internet pagers
    T \
    Peer-to-peer networks Peer-to-peer networks (Peer to Peer, p2p) do not require a server. The purpose of this service is direct file exchange between network participants. The operation of peer-to-peer networks is based on the fact that each client is also a server. If someone has an interesting file, he tells the program that he wants to put this file on the network, and then notifies interested people about it. The program breaks the file into small parts, and other people who download this file simultaneously provide those “pieces” that they have already downloaded to the next clients. This achieves the effect of optimizing the load on the network and the absence of a single server in a peer-to-peer network. Among the most well-known programs for organizing p2p networks is pTorrent, a client program whose window can be seen in Fig. 15.12. The main problem of peer-to-peer networks is the fact that electronic information products (programs, films, books and music) are often distributed through them in violation of copyright.

    , X- A

    QCompleted(O) j ^ sms: IgAcbVe (2) Qlnactive (0)

    T1SHZH nlOc

    . H.4J-, J \Own Speed, j IJp Speed JReq? , 5 Uptoaded , xy3
    J- /7.66.153 102 pTorrent 1.3.G D 100,0 2|0
    I ® HSI-KBW-078-042-221 -034, hsi3, cable-, BrtTorrent 6.1.2 D 100,0 4.3 kB/s 112 to :111
    "■ppp-8b25-54-226.ufcranet.ru pTorrent 1,8,2 100,0 5.8 kB/s 4 i 0 448 KB 5iI
    I 81.198.55.48 (Log rent 1,8,2 D 100,0 1.2 kB/s 3|0 96,0 №
    Il 384-203-51 -205 ,mysmart le uTor rent 1.8.2 D 100.0 2.1 kB/s 32,0 №
    I 84.237.164.95 pTorrent 1.8.3 D 100,0 6.2 kB/s 4(0 192 Sh I
    I 90.150,137.18? pTorrent 1,8,3 D 100,0 2.9 kB/s 3 I 0 208 m 51.2 I=
    I "Zu 116-238-112-92.pool.ukrtel.net pTorrent 1,8,1 D 100.0 1.8 kB/s 3(0
    j Mlriet 166.255.92-89, tmn.ertefeconri.ru IiTorrent 1,8,3 D 100,0 0.3 kB/s 2 J 0
    1 JAN 93-80-0-187. broadband, corbina, gi Lu _ __ pTorrent 1,8,2 0,2 4.2 kB/s yashshhhh 240 kB Jff j-
    Rice. j". ;D: 52.0 kB/s T: 2.6 MS 15.12. pTorrent program Xj;O>2fc0/sT:93.2k8

    15.6.4. Programs for scientific research and calculations

    Specialized software for conducting scientific research, collecting scientific (experimental) statistics and performing special scientific calculations based on the collected data is not as widely known as, for example, software for working on the Internet, office or multimedia software. One of the areas of scientific research in which specialized scientific software is widely used is bioinformatics, which is closely related to the decoding of the human genome and the subsequent construction of gene models (genetic engineering) to solve problems in medicine, health, and agriculture. The Avogadro program, for example, allows you to create amazing 3D models of molecules (Figure 15.13).

    Programs for general mathematical, statistical and physical calculations are most common (examples of such programs: STATISTICA, MathCad, MathLab, MATHEMATICA). The third type in terms of the number of programs is programs for astronomical modeling and astronomical calculations.


    15.6.5. Educational programs

    The trend of integrating computer technology into the educational process today is becoming more and more apparent, while at the same time the development of software specifically focused on the educational process is actively underway. Software for the educational process can be divided into three main groups:

    □ for interaction;

    □ to transfer knowledge on certain subjects;

    □ for computer testing and training.

    Programs for interaction

    With the help of modern software and hardware, a teacher can demonstrate his desktop on student monitors and see student desktops on his computer monitor. These same tools allow students to access each other's desktops. Typically, this mechanism works effectively within one class within a local computer network, but with good network channel throughput it can also be effective in global networks or the Internet. This creates a distributed learning environment where all participants can access each other's desktops. An example of software that implements these principles is the NetOp School software product produced by Axis Projects.

    Programs for transferring knowledge in certain subjects

    Programs of this type in an interactive form allow you to gain knowledge in a particular subject of study or in a particular area of ​​knowledge. There are many such programs today, both commercial and free. As an example, we give the program “Interactive Periodic Table”, which allows you to obtain comprehensive information about each element of the periodic table (Fig. 15.14).



    Programs for computer testing and training

    There are now a great variety of programs for computer testing and training, both freely available and paid, ranging from simple programs with answers to a dozen questions with a single choice of option to powerful systems of computer testing and qualification confirmation with network registration, a wide range of task methods question and answer, and a database of questions consisting of tens of thousands of different options.

    Professional computer testing systems also have built-in intelligence, and if during the survey you cannot answer a question correctly, they will ask it again, but rephrased. If the answer is again incorrect, the system will begin to check your knowledge of the topic as a whole.

    Educational operating system of Russia

    In Russia in 2008, the development and testing of an educational Linux distribution was completed, which received the general name “School Linux”. This educational distribution, based on the Alt Linux Desktop and Alt Linux Server solutions, has several versions:

    □ Master - the most complete version, designed for a “good” hardware platform (with RAM 2 GB and higher);

    □ Junior - the most common solution, intended for most school computers, differs from the Master version only in the absence of the most resource-intensive packages, such as Eclipse;

    □ Lightweight - a special lightweight solution for older computers with RAM from 512 to 128 bytes;

    □ Terminal-server - a solution for one powerful computer and a class of old computers with RAM from 32 to 64 MB;

    □ Server - a server solution with a set of educational server software designed for integrating school computers into a network with a single gateway, content filtering of traffic, tools for collective interaction (Media Wiki) and e-learning (Moodle).

    The educational distribution contains a comprehensive set of office, system and network programs for every taste. In addition, the educational distribution includes many specialized scientific, educational and educational applications. A powerful base of development tools will allow students to master a variety of programming techniques and program design in different programming languages ​​and in different environments.

    15.6.6. Programs for organizing the work of educational institutions

    Programs for computerizing the management of the school process and facilitating the work of school administration, interacting with parents, recording various events in the lives of students, monitoring their health status and supporting the educational process (computer class journal, computer diary, online parent meeting) have been developed and used for a long time, but have mostly foreign origin. However, as is known, in some areas of activity standards and formal criteria diverge. This happened with accounting programs, which for our country had to be created practically “from scratch,” and this also happened with programs for managing the work of a school or university: the structures of educational institutions, assessment criteria, enrollment, division into groups and disciplines turned out to be too different. And the legislative framework for a long time did not encourage the development of such programs.

    The very first software products to make life easier for the administration of an educational institution were programs for scheduling classes taking into account the workload of teachers, classrooms, subjects and other parameters. These programs did not require knowledge of any special standards and documents; solving the problem of allocating resources over time is pure mathematics. One of the successful implementations of such programs, Rector, is shown in Fig. 15.15.

    However, the life and administrative tasks of an educational institution are not limited to scheduling. Thematic planning of lessons, recording attendance and grades, various school events, contacts with parents - all this also requires certain program support. Such support is implemented in the Net-School program (Fig. 15.16).

    This system automates many school administration functions. But it cannot be freely used in school

    process, and the point is not in programming, but in the legal and financial registration of many operations: the problem of the school magazine arises, which will have to be duplicated twice, in electronic form and in paper; The problem of financing the distribution of reports to parents in the form of SMS messages has not been resolved.

    fVr.Ttip bdnk dayanych Sh

    "■■QMm^^ . LShtt - Shtrtsh" \.y

    Rice. 15.15. Scheduling in the Rector program

    j Ftie tdt "Aei/., ha\"oriLe-: Tooh- Help

    Ajjkires:. bgjj hc";p.//netsdioof/aspv"Graue;"Jour


    Students September Average Valuation for the period
    10 ! grade
    U U AND Li w A L.J. U Li AND U U
    1, Aronova Irin ill 5,00
    2, Badyashev Alexander l ill 4,33
    3. Zimin Arkadi UP Hill 4,00
    4. K"raierova Valentina iill f~ l 31
    5, Illll 3,50
    6, Kuznetsova Anastasia iiii ... 3,67 ..
    7, Kurskaya Ksen " 3,50
    0. . iiii 2,67
    9. Norova Tat Ya! UP ill 5/30
    10, Pavlova Nat FROM !fill
    11, Renat! llfill 3,00
    12, Romam iill 3,33
    13. Sazonova South yaya 5,00
    14. 4,50
    SHSHSH IhWi
    ZYIIIIIIIII schv


    Rice. 15.16. School administrative information system Net-School


    15.6.7. Multimedia programs

    The class of multimedia software includes programs with which you can create, edit, save and play multimedia data, that is, data containing stationary and moving images and sound. Multimedia software includes a number of very popular programs: graphic editors for raster formats Adobe Photoshop and GIMP, vector graphic editors Corel Draw and Corel Xara, programs for creating and editing flash animation, programs for working with sound, and a number of multimedia format players , from picture viewers to DVD players.

    15.6.8. Accounting programs

    Accounting programs represent a huge class of applications. These can be stand-alone software products or software modules included in the information system. Among domestic accounting programs, the most famous program is 1C: Accounting. Once started as an autonomous software environment for accounting calculations, it has now been transformed into an information system that includes modules for personnel records (1C-personnel), warehouse accounting (1C-warehouse), planning the financial activities of industrial enterprises (1C- enterprise) and trading companies (1C-trade). This software product is commercial.

    Among the free software there is also a solution for automating the accounting and economic accounting of enterprises (Ananas), which, if used correctly, can in many cases be more appropriate than the rather expensive 1C system that requires special training.

    15.6.9. Programs for financial calculations and forecasting

    The main purpose of such programs is to perform financial calculations. Such programs can perform the following functions:

    □ development of a business plan for the enterprise;

    □ business development design;

    □ analysis of the financial condition of the enterprise based on its financial statements;

    □ calculation of financial indicators;

    □ calculation of the borrower's creditworthiness;

    □ preparation of the enterprise’s annual report;

    □ comparison of the financial condition of the enterprise with competing companies;

    □ analysis of profitability, solvency, liquidity and financial stability;

    □ analysis of planned investment activities.

    An example of this type of software is the Expert Systems software package: Project Expert, Audit Expert and Prime Expert. These programs allow you to perform all the mentioned types of financial analysis and planning, assessing the risks and opportunities of the enterprise.

    15.6.10. Software for technical design

    Modern industry and construction cannot be imagined without software packages. The timing of the development and release of products, as well as the timing of the development of design documentation for the construction of buildings, become decisive in the competition. Modern computer-aided design systems make it possible to create drawings of parts, assemblies and devices on a computer, immediately in three-dimensional form, and immediately make calculations of strength, wear resistance and other defining technical characteristics. The most famous programs of this class are Autodesk Autokad in all modifications, allowing for computer-aided design from mechanical parts to chemical compounds, and Graphisoft ArchiCAD, which is designed for architectural design.

    In addition to these very expensive software products, there is a whole line of various specialized programs, both commercial and free.

    15.6.11. Business programs

    Business software includes a wide variety of types of software packages:

    □ software for managing the operation of an industrial enterprise;

    □ process control software;

    □ specialized software for industries;

    □ specialized software for types of production;

    □ specialized information systems for types of business;

    □ software for small businesses;

    □ software for network business.

    For large and medium-sized enterprises, ready-made resource planning systems (Enterprise Resource Planning - ERP) have already become standard. The most well-known software packages of this class are SAP R/3 from SAP AG and Oracle eBusiness Suite from Oracle. Of the Russian software packages, the most widely used is the Galaktika ERP package from the Galaktika Corporation, as well as 1C: Enterprise.

    ERP systems have become widespread due to their modular structure, which allows flexible configuration of the software product to suit the needs of any enterprise. For example, Oracle eBusiness Suite includes management subsystems:

    Specialized software for conducting scientific research, collecting scientific (experimental) statistics and performing special scientific calculations based on the collected data is not so widely known. One of the areas of scientific research in which specialized scientific software is most widely used is bioinformatics (Avogadro Program), followed by programs for general mathematical, statistical and physical calculations (the most common are STATISTICA, MathCad, MathLab, MATHEMATICA). The third type in terms of the number of programs is programs for astronomical modeling and astronomical calculations.

    The trend of integrating computer technology into the educational process today is becoming more and more apparent, while at the same time the development of software specifically focused on the educational process is actively underway. Software for the educational process can be divided into three main groups:

    □ for interaction;

    □ to transfer knowledge on certain subjects;

    □ for computer testing and training.

    Multimedia programs

    The class of multimedia software includes programs with which you can create, edit, save and play multimedia data, i.e. data containing stationary and moving images and sound. Multimedia software includes a number of very popular programs: graphic editors of raster formats AdobePhotoshop and GIMP, vector graphic editors CorelDraw and CorelXara, programs for creating and editing flash animation, programs for working with sound, and a number of multimedia format players, from programs viewing pictures to DVD players.

    Accounting programs

    Accounting programs represent a huge class of applications. These can be stand-alone software products or software modules included in the information system. Among domestic accounting programs, the most famous program is 1C: Accounting, which includes modules for personnel accounting (1C-personnel), warehouse accounting (1C-warehouse), planning the financial activities of industrial enterprises (1C-enterprise) and trading companies (1C-trade ). This software product is commercial.

    Among the free software there is also a solution for automating the accounting and economic accounting of enterprises (Ananas), which, if used correctly, can in many cases be more appropriate than the rather expensive 1C system that requires special training.

    Programs for financial calculations and forecasting

    The main purpose of such programs is to perform financial calculations. Such programs can perform the following functions:

    □ development of a business plan for the enterprise;

    □ business development design;

    □ analysis of the financial condition of the enterprise based on its financial statements;

    □ calculation of financial indicators;

    □ calculation of the borrower's creditworthiness;

    □ preparation of the enterprise’s annual report;

    □ comparison of the financial condition of the enterprise with competing companies;

    □ analysis of profitability, solvency, liquidity and financial stability;

    □ analysis of planned investment activities.

    An example of this type of software is the ExpertSystems software package: ProjectExpert, AuditExpert and PrimeExpert. These programs allow you to perform all the mentioned types of financial analysis and planning, assessing the risks and opportunities of the enterprise.

    Software for technical design

    The most famous programs of this class are AutodeskAutokad in all modifications, allowing for computer-aided design from mechanical parts to chemical compounds, and GraphisoftArchiCAD, which is designed for architectural design.

    In addition to these very expensive software products, there is a whole line of various specialized programs, both commercial and free.

    Business programs

    Business software includes a wide variety of types of software packages:

    □ software for managing the operation of an industrial enterprise;

    □ process control software;

    □ specialized software for industries;

    □ specialized software for types of production;

    □ specialized information systems for types of business;

    □ software for small businesses;

    □ software for network business.

    For large and medium-sized enterprises, ready-made resource planning systems (Enterprise Resource Planning - ERP) have already become the standard. The most well-known software packages of this class are SAPR/3 from SAPAG and OracleeBusinessSuite from Oracle. Of the Russian software packages, the most widely used package is the Galaktika ERP package from the Galaktika Corporation, as well as 1C: Enterprise.

    RP systems have become widespread due to their modular structure, which allows flexible configuration of the software product to suit the needs of any enterprise. For example, OracleeBusinessSuite includes management subsystems:

    □ business efficiency;

    □ material flows;

    □ relationships with clients;

    □ finances;

    □ maintenance and repair;

    □ personnel;

    □ production;

    □ projects;

    □ life cycle;

    □ logistics.

    The ERP system is very flexible in configuration, easily adapts to the location and can satisfy almost any business management needs.

    Social challenges of software development. Human unfreedom

    The ever-increasing freedom of a computer from software, and sometimes from disk drives and devices for storing user information, is in many ways a good thing: all a person needs is a computer network and the ability to connect to it. You can find programs on the network, perhaps even an operating system; there are documents on the network; after editing or forwarding them, a person saves them again in network storage. In this case, human freedom from software is exchanged for lack of freedom in another respect. What is the degree of confidentiality, security, and accessibility of documents?

    It’s nice to enter an “intelligent virtual home” that matches your desires in every way and tries to predict them. But who can guarantee that tomorrow these will also be your desires, and not the desires of some hacker who hacked the information system for managing your “smart home”?

    Therefore, we can predict a period of long and wary attitude towards some trends in software development, at least until they are properly and reliably regulated in the legal sphere. Otherwise, the freedom granted by technology may turn into unexpected slavery.

    Intellectual degradation

    Computers are becoming smarter with increasingly sophisticated software. At the same time, the program interface is becoming simpler and more fun. You don’t need to think, you don’t need to strain, the most complex technologies, available in the form of colorful icons and pictures, will do everything for you: they will calculate, evaluate, predict, select a spouse, prescribe a diet. There are many more answers on the Internet than people have questions, and this cannot but cause alarm. If a person does not train his muscles, he degrades physically; if a person stops straining his thinking apparatus, he degrades intellectually. This is a very important challenge, which can only be adequately answered by a modern education system built with this challenge in mind, including a system of continuous education throughout life.

    Questions

    1. How can software be classified according to the degree of its interaction with computer hardware?

    2. What classes of software do you know by type of licensing?

    3. What is the difference between free, open source, commercial and proprietary software?

    4. What is the difference between portable and middleware?

    5. Classify software according to the way it interacts with a computer network.

    6. What is dangerous software?

    7. What is a portable application?

    8. List the classes of application software known to you.

    9. What are the main functions of a word processor?

    10. What requirements must a modern spreadsheet meet?

    11. What is the main and additional functionality of the program for creating and demonstrating presentations?

    12. Are the programs included in the Microsoft Office and OpenOffice.org packages functionally identical?

    13. What is the purpose of project management software (with a list of functions)?

    14. Name the functionality that is important for a modern word processor.

    15. What are the functional differences between MicrosoftWord and OpenOffice.orgWriter?

    16. List the main functions of a table processor.

    17. What is the additional functionality of the table processor?

    18. What are pivot tables, what are they for?

    19. What is the purpose and typical functionality of the organizer?

    20. What electronic document management systems do you know?

    21. What is the basic functionality of an electronic document management system?

    22. Creating a presentation using PowerPoint.

    23. What programs for working with Internet services do you know?

    24. What functions does educational software perform?

    25. How to create documents and spreadsheets in common “office” formats without installing an office suite on your computer?

    26. What are the prospects for software development?

    27. What are the social consequences of intensive human interaction with modern software?

    28. Social challenges of software development