查看完整版本 : The major changes from Scilab 3.0 to Scilab 4.0


amao
2006-03-15 09:50

Scilab 4.0 已于2006年2月15日发布,以下是4.0相对于3.0的新特性(摘自http://www.scilab.org)。

The major changes from Scilab 3.0 to Scilab 4.0:


  • Graphics:
    • Graphical entities (objects) have been extended with a particular effort on:
      • The Axes entity with respect to change of coordinates (logscale enable, axes inversion in 2D and 3D) and graduation display.
      • Versatile Title and labels entities in 2D and 3D
      • 3D object merge and zoom
      • Rotation of text entities
      • Save and load of all graphical entities

    • New functions have been defined to mimic their Matlab equivalent:
      • plot
      • surf
      • mesh
      • bar, barh and barhomogenize
      • pie

    • Graphical Environment improved and extended:
      • Manipulation of the hierachy of the entities has been made easier thanks to a hierachy browser.
      • A toolbar has been added to the graphic windows, the function toolbar can be used to set or unset it. (Windows specific)

    • Graphic window Events (mouse, keyboard,...) handling have been improved and extended:
      • Click, double_click, press, release ,move
      • Key press and release, with or without Shift and Ctrl modifiers.

    • xs2bmp and xs2emf functions added to export graphics under bmp and EMF (Enhanced Meta File) formats. (Windows specific)
    • colorbar function added

  • Numerical computation:
    • Sparse operations and functions like real, imag, matrix, spones revisited to improve efficiency
    • Bessel functions extended to work in the complex case (using Slatec routines)
      Incompatibilities: The semantics of besseli, besselj, besselk and bessely functions has been changed and extended.
      The oldbesseli, oldbesselj, oldbesselk and oldbessely correspond to the old obsolete semantics.
    • New version of linpro and quapro. Thanks to Cecilia Pola.
    • bvodeS function added to solve differential equation with boundary value.Thanks to Rainer Von Seggern.
    • detrend function added to remove constant, linear or piecewise linear trend from a vector
    • Interface with Excel (Functions to read Excel files).

  • Matlab to Scilab converter:
    • Translatepaths function improved to allow conversion on an entire toolbox propagating inference throught toolbox functions
    • The set of translated function has been extented in particular with the basic graphic functions
    • Scilab function sum, prod,... extented to the "first non singleton" matlab semantics to improve readability and efficiency of translated code
    • Try catch construct added to Scilab for a better translation

  • Scipad editor:
    • A debugging tool is now available
    • Drag'n'drop is now supported
    • Split a Scipad window
    • Print file from Scipad is now available
    • Scipad is easily localized (See "Adding translations..." in the Scipad Help Menu).
      Today English, German, French, Swedish, Polish, Norwegian and Italian languages are supported

    • User settings and text colors are now configurable and saved across editing sessions
    • Colorization of strings rewritten - now supports strings on continued lines
    • Colorization of files launched in the background, with progressbar.

    • Quick access in the file menu for recently opened/saved files
    • Identification of Scilab predefined variables and library functions in scilab scripts
    • Miscellaneous file management improvements: readonly flag, absolute pathnames to files, pruned pathnames display, revert to saved feature, MRU (Most Recently Used) list.
    • Keyword completion added, keyword list now completely dynamical

    • Undo/Redo rewritten
    • Go to... functions rewritten and expanded
    • Find/Replace rewritten, includes find files, find in files, find in multiple buffers, find in selection only, find full word

    • Creation of XML help page templates and xmltohtml compilation available from within Scipad

  • Syntax:
    • try-catch instruction added to improve programming with error control.

  • Other improvements:
    • Configure adapted to linux 64bit architectures

    • Use tcltk 8.4.12 - TCL interface has been totally rewritten (for better error detection and better data transfert). ScilabEval improve to handle synchronism.

    • Memory improvements under Windows platforms (particularly the management of virtual memory or swap file)
    • Exception management added under Windows version

    • Windows platforms with:
      • Intel C Compiler 9.0
      • Intel Fortran 9.0

    • The source files have been updated to optimise the compiled version built with VC6 tool
      Please note that the Windows binary version provided on our Web site is built with .NET
    • Improvement of the integration of Visual Studio Compiler to the dynamic links: findmsvccompiler() and configure_msvc() macros have been added

    • Integration of the ATLAS library (specific Windows version).
      During the installation of Scilab, dynamic library (Atlas.dll) is automatically chosen according to the CPU detected
      See details in the Atlas.spec file under scilab\bin directory
    • For advanced users: Scilab can be used with Atlas library on all platforms by:
      • downloading Atlas library sources,
      • compiling Atlas sources,
      • compiling scilab sources with the following configure option : --with-atlas-library=ATLAS_LIB_DIRECTORY
        (see /configure --help)

    • Java interface written to allow calling Scilab computational engine from Java

    • Font rotation is now possible under Xwindow

    • SCI and HOME are redefined if not correct ( Bug 1488 Only for Windows )
    • home variable (%HOME%) defined under Windows: c:/Documents and Setting/USER
    • New environment variable SCIHOME:
      • Under Windows: %HOME%\scilab\SCILAB_VERSION
      • Under Linux: $HOME/USER/.scilab/SCILAB_VERSION

    • Function what() has been rewritten : alphabetical sort, print modified

  • New primitives:
    • clipboard (specific Windows)
    • perl
    • calendar
    • mkdir
    • rmdir
    • copyfile
    • sleep
    • getos
    • setenv
    • toprint("file")
    • getmemory()
    • getshortpathname (specific Windows)
    • getlongpathname (specific Windows)
    • toolbar (specific Windows)
    • hidetoolbar (specific Windows)
    • console (specific Windows)
    • mcisendstring (specific Windows)
    • banner
    • winqueryreg (specific Windows)
    • xls_open
    • xls_read

  • Please note:
    • "xgetmouse", "eventhandler" event set extended to click, double-click, <Ctrl> Key. See more details in xclick and xgetmouse on line help.
      Warning: Because of distinction of click events, some users' scripts can have a different behavior.
      To make it work as before please check and modified test on events as follow:
      supposing that button contains the value returned by xclick (left most argument) or xgetmouse (third componant of returned vector) then replace test like:
      button==0 by or(button==[0,3])
      button==1
      by or(button==[1,4])
      button==2
      by or(button==[2,5])