打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
Scilab简介

由于软件本身的稳定性有时间规律性,加之人们对于某个事物的接受需要一个过程,因此,一项软件或者技术可能出现较早,但成熟应用或者受到重视往往需要经过较长时间。

Scilab是一款较为知名的开源软件,从易用性和易安装性等方面考虑,可以作为工程师或科研工作者的一个重要手段,替换复杂的MATLAB

MATLAB主要是基于数值式计算,MAPLE主要是基于符号式计算,SCILAB 是由法国国家信息、自动化研究院(INRIA)开发的开放源码软件。SCILAB 一词源于英文Scientific Laboratory(科学实验室)词头的合并)。与MATLAB类似,SCILAB也是一种科学工程计算软件,可以很方便地实现各种矩阵运算与图形显示,能应用于科学计算、数学建模、信号处理、决策优化、线性/非线性控制等各个方面。它还提供可以满足不同工程与科学需要的工具箱,例如SCICOS,信号处理工具箱,图与网络工具箱等。

由于SCILAB的语法与MATLAB非常接近,熟悉MATLAB编程的人很快就会掌握SCILAB的使用。有意思的是,SCILAB提供的语言转换函数可以自动将用MATLAB语言编写的程序翻译为SCILAB语言。目前,SCILAB除了WINDOWSNT版本外,还有多种UNIXLINUX下的版本。

以下是两个方面对Scilab的简单介绍,其它复杂功能在此基础上非常容易读懂。

.基本命令

Scilab主要针对向量和矩阵进行分析和运算,其基本命令主要围绕着与它们相关的内容展开。

简单数据处理

1.生成向量和矩阵。

V = ones(1,120)

M = ones(5,5)

Scilab中生成矩阵和向量的方法有很多,例1中使用的是ones这个函数,生成全1元素的函数。还有zeros函数,生成全0元素的函数;rand函数,生成随机元素的函数。

2.采用rand函数生成一个向量和矩阵,然后寻找其中的最大值和最小值。

V = rand(1,10)

M = rand(5,5)

max(M)

min(v)

对于常见的实验数据,通常采用向量来保存这些实验数据,实际中可以采用Scilab中的均值函数mean和标准方差函数stdev来分析这些实验数据。

3.简单分析向量储存的实验数据。

mean(v)

stdev(v)

Scilab编程

为了便于统一维护和实现数据分析的独立性,通常针对一批数据的处理书写一个Scilab处理脚本。这个脚本的书写就是Scilab里面的编程,它的若干语句类似于C语言,具备很强的可操作性。采用这种方式使用Scilab,可以减少后期的维护难度,提高可复用性。

4,列举一个典型的Scilab脚本的内容。

// Data

x = -1:0.1:1

y = -1:0.1:1

[X,Y] = meshgrid(x,y)

Z = X.^2 + Y.^2

// Plot

scf(14)

clf(14)

xset("colormap"jetcolormap(4))

surf(X,Y,Z)

xlabel('X')ylabel('Y')zlabel('Z')

上面列举的便是一个典型的Scilab编程脚本,里面包含了数据及其对数据的操作,每次只需要在Scilab的命令终端执行该脚本就可以得到相同的结果,并绘制出相应的图像,后续也可以修改该脚本,完成更复杂的任务。

矩阵运算

Scilab中基本的矩阵运算与Matlab类似,实际工程运用中可以大量使用算术操作或矩阵函数,简化数据分析和处理的困难。

.2D网格

1.2D曲线的绘制,例如绘制图形,采用如下程序实现对曲线的绘制:

clear

x = linspace(-5,5,51)

y = 1 ./(1+x.^2)

plot(x,y,'o-b')

绘制出来的基本二维曲线为:

2.在例1的基础上增加如下语句,添加2D曲线的网格。

xgrid(5,1,7)

在计算流体力学(CFD)和核反应堆计算中经常需要绘制2D情况下的流函数分布和中子通量分布,这时需要使用Sgrayplot函数。

 3,使用Sgrayplot绘制二维平面的流函数分布。已知二维平面均匀化的网格点上的流函数值,采用矩阵方式进行存放,将使用Scilab内置的Sgrayplot函数来进行绘制。

zm = min(FV)zM = max(FV)

xset("colormap",jetcolormap(64))

colorbar(zm,zM)

Sgrayplot(x,y,FV)

相应的二维平面流函数分布如下图所示。

实质上Scilab一开始设计便是贴近MATLAB,所以其脚本编程或者图形界面都是模仿的MATLABMATPLOTLIB采用脚本语言进行数据可视化操作,注重的是对数据的高效存储和可视化。Scilab更加强调对数据的操作和处理,可视化仅仅是其一方面。在使用Scilab的时候仅仅需要利用它对各类数据进行数值分析和处理,或者利用第三方功能包来完成某个特定领域的仿真计算。近年来流行R语言及其工具,更多面向数理统计方面,但很多情况下Scilab涵盖了这些功能,一般的数据处理依赖于ScilabMATPLOTLIB就足够了。

版权声明:转载请附上原文链接:
https://blog.csdn.net/betterlord/article/details/51723725

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
科学计算自由软件SCILAB
Matlab 之 find()函数
matlab unique函数
利用matlab实现16QAM调制
Matlab数组
数值计算软件OCTAVE 、SCILAB与R简介
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服