Open source mathematics software

xiaoxiao2021-03-06  48

Open source code Mathematical software Zhou Chaofeng (Department of Mathematics Science, Tsinghua University, Beijing 100084) 1 Open source --- a payable trend open source code in the 20th century in the last few years of development gives people a new feeling. Open source software, open source mode, open source code culture, open document writing; Richard Stallman and His GNU Project (GNU Projects), Linus Torvalds, and Linux operating systems named after his name, these names countless The times appear in various media and quickly become the concept of information. Big companies in the information industry - IBM, Sun, Netscape and so on, with an unprecedented enthusiasm to participate, transfer their products to the platform of open source, open the original commercial products. Recently, the US Movie Association Controlled Decss was reported to make a thinking about the issuance of computer software and copyright issues. The judgment of the US Tour Court pointed out that computer program code is more than just functional expression, but more importantly, the expression of thought, and sentenced the US Movie Association to lose. Its key is that DECSS is released in source code. The rise of open source movement is almost explosive. Linux kernel is constantly updated, new Linux distribution, more and more software open source. Now, it is almost possible to find the trace of open source software in any of the types of software. The following table gives only a number of typical examples:

Operating System: Linux, BSD Series, Sun Solaris8.0Office Office Suite: Star Office, Koffice Development Tools: C : C-Forge, Java: NetBeans, Anfy, etc. Network Server Software: Apache, WU-FTP, Sendmail Web Browser: Netscape series, Lynx

It is hoped that the open source movement, the GNU program and the Linux operating system have a further understanding of the readers, see References [1], [2], [6] and [7]. The software mentioned above is versatile. There are also more and more open source software in numerical and symbol computing software. This article focuses on the open source software Scilab and GNU Octave, which are calculated, and compared with the familiar MATLAB, indicating that SciLab and GNU Octave can be used to replace MATLAB. 2 Open source mathematics software In fact, we have been using open source software for a long time, a famous example is the Latex typography software. Open source code has always been an important way to calculate mathematics and science and engineering calculations, and this is so many years. In the field of computational mathematics, the algorithm is expressed in the process of expressing nature and is clear and efficient. For us, the source code on behalf of the mathematics algorithm is a way of thinking, and should not be privately owned by some people, and the copyright protection is added. Netlib (www.netlib.org) is familiar with many scholars in this field, and is an important medium for opening up source code mathematics software for many years. However, in recent years, the research and user of mathematics software seems to be more attracted to commercial mathematics software, such as Mathematica, Matlab, MAPLE, SAS, etc. It is undeniable that these software products are indeed very excellent and have a good performance. But they are expensive, and are proprietary, limited use, in domestic after-sales service and technical support. Reflect this phenomenon, it is not difficult to find the tempting of these commercial software, mainly in the friendly user interface and perfect graphics. In any software, if there is no original code, the problem in the software can only wait for the software developer to fix. For example, the results of the function roots in MATLAB, the results of the polynomial seeking roots such as (Xa) n are not ideal, such as our (X-1) 50 to find roots, then this result, the first root is 2.73693805237014, final One is 0.364760488907891, we have no way to use a better algorithm to replace it. Every upgrade of Matlab has not involved this problem, and users need to wait again and again. If you are using an open source software, then the result is another look, the user can do it yourself to modify it, and share this benefit with everyone. 3 As an Open Source Software, SciLab SciLab is a free software developed by the French Inria Laboratory, which is initially developed for system control and signal processing. SCILAB features a friendly user interface and a relatively complete graphics function compared to traditional open source mathematics software. Scilab software consists of three parts: language interpreter, SCILAB routine library, Fortran and C routine libraries. SCILAB provides a computing environment that explains the operation and has a distinct feature. (1) Under the efforts of the Cross-Platform Inria Lab, as well as some volunteers, I can use Scilab in any computer environment. In Windows9x / NT system, common UNIX / Linux-xwindow system, and Apple's Macintosh system we can find running scilab binary release versions. More environments will be supported by SCILAB. If you need to use in some special operating system environments, users can also compile an executable version.

(2) MATLAB-Compatible SciLab is a high-level language compatible with MATLAB, which is reflected in terms of a variety of data types, and the matrix operates like a normal numerical operation. This is quite similar to everyone familiar with MATLAB, easy to use.

Provide a basic function and function set for a variety of calculations. It can handle more complex matrix operations, such as a fractal matrix, matrix polynomial, and can handle complicated objects such as charts and lists.

Provides an open programmable environment that can easily add basic functions.

Support for special application development libraries in the form of toolbox.

The SCIICOS tool package can quickly make mathematical modeling, which is functioning close to the Simulink of Matlab software.

(3) The form of the graphical interface interface is close to MATLAB, which is easy to accept Scilab for familiar matlab. (4) Open source code SCILAB is a fully open mathematical computing environment that can be extended, even hand-optimized and customized a self-optimization and customization of its own scilab. In various distributions in SciLab, there is a release of general mathematics software, usually this is nomited: scilab-2.5-src.tar.gz has a SRC behind the software name Scilab and version number 2.5, this is Abbreviation for the original code. Such releases represent this release package of the original code, which is an original code of scilab. This type of distribution package is a typical feature of open source software. The scilab's ReadMe file is clearly stated that this is free software, which is free to all users. It is only necessary to fill in a user instructions in accordance with the format and then use email to register. (5) Parallel calculation: scilab integrates PVM (Parallel Virutal Machine), so we can calculate in parallel in the network environment. Matlab does not have this part of the function. Further introduction to the parallel calculation of scilab [8]. It can be seen that scilab is a relatively complete computing environment that meets our requirements in most cases. We make some comparison tests in use, function, and performance, from the results, Scilab is an excellent computing platform. Compared to expensive commercial software, SCILAB is not as commercial compared to expensive commercial software. 4 Free Mathematics Software GNU Octave GNU Octave is a free Software Foundation that follows a free re-released software that follows GNU General Public License. The author is some volunteers headed by John W. Eaton. It provides an environment that supports advanced languages ​​for GNU Octave, which is compatible with MATLAB, mainly for numerical calculations. It provides a convenient command line, which can solve linear and nonlinear issues, and do some numerical simulations. Octave also provides some toolkits that can solve the general linear algebraic problem, nonlinear equations, routine function integral, processing polynomial, process ordinary differential equations, and differential algebraic equations. It is also very easy to expand and customize the interface of Octave comes. Compared with Scilab described earlier,

First of all, their common is open source software.

Octave is better than scilab, which is better to syntax compatibility with MATLAB, and there is almost no difference. For example, Octave also uses the form of M files to extend functionality and definition functions. Therefore, familiar with Matlab is more likely to accept the Octave environment.

Octave features simpler than scilab, which makes Octave significance for some users than Scilab.

Unfortunately Octave currently has no graphical interface, we can only interact in the way of line commands. But Octave still has its own characteristics: (1) It is a GPL software. With regard to the meaning of GPL, it will not be introduced here. We must point out that it allows users to issue this software in the premise of following the GPL protocol, can be included in the user's product. Scilab is not allowed, users can only use Scilab free of charge. (2) It can programmatically, the Octave language is more powerful, almost provides support for all system functions, and Octave is also more close to C in syntax, such as providing and this-sample budget. This way, we can add some more powerful and easy extensions in the Octave environment. It is not like a large limit in matlab and scilab environments, sometimes unable to use system resources. (3) Its calculator is written in C, and Scilab is basically written in Fortran. This is also a useful resource. 5 Conclusions and Thinking (1) Open source will become one of the important ways of software development and issuance. SCILAB and Octave described herein are math software for open source. SciLabs can be used free of charge, but Octave can not only be used free of use, but also follow the user by the user by the GPL protocol. (2) It is foreseeable that the free math software is constantly incorrect due to its openness, performance will gradually improve, and can meet more users. (3) Compared to the famous commercial mathematical software Matlab, SCILAB is not inferior from the performance or from performance. In China, the current after-sales service and technical support are limited, and the commercial mathematical software is expensive, it can be used instead of MATLAB. (4) This article introduces the main value calculation software. Mathematica and MAPLE are currently popular commercial software in symbol calculations. Open source code symbol computing software is also very fast, Yacas is currently optimistic. (5) Develop and develop domestic self-owned scientific computing environments, which is a problem that domestic computational mathematics and scientific and engineering calculation workers have explored many years. With existing free mathematics software, especially free math software that can be released by the user, it may be more reality. References (10) Richard Stallman: Stallman is the author of GCC (a C compiler) and GNU Emacs. GNU Planning and Free Software Foundation (FSF) founder, open source motion. GNU Projects: This program created by Stallman is to create an open, free UNIX version. The GNU itself did not reach the goal, but it produced some important tools, incorporated into Linux in the future, and made it a fully equipped operating system. In order to protect its work, Stallman established a FREE Software Foundation, www.fsf.org and drafted the General Public License (GPL). GPL has become a guidelines for Linux and many other plans. Further information see [2]. Decss: A decryption algorithm for DVD location encryption code. The American Film Association believes that the public publication of the DECSS algorithm code will prompt the pirated DVD. Linux: A common release version of the Operating Label, which is a common release version with Redhat, Slackware, and Debian. Further see Linux [6].

转载请注明原文地址:https://www.9cbs.com/read-59075.html

New Post(0)