Scilab操作入门
介绍界面,帮助,demo等使用方法。
命令提示符: -->
scilab的命令提示符是--> , 在该提示符下可以输入命令。 在运行demo时会有暂停,此时显示的提示符>>只是等待用户按Enter键,不能输入命令。 在菜单Control-> stop可以暂时停止demo的执行,之后命令提示符变为-1->, 此时可以输入命令。 使用resume命令或者选择菜单Control->resume 可以恢复demo的执行。 使用abort命令或选择菜单Control->abort可以放弃demo的执行,命令提示符重新变为-->.。
数值运算
基本运算
在指令界面的 '-->'之后,即可输入运算字串。例子:
--> 1+1 //按下[Enter]。
Ans =
2.
--> log(10) //按下[Enter]。
Ans =
2.3025851
变量与常量
在scilab中变量的宣告是很自由的,几乎大部分的字串皆可以成为变量。例如x=3;a2=14;......但是变量开头不可以是数字。同时也不可以将Scilab内定常数更改它的数值。
Scilab的内定常数多半以'%'开头,例如圆周率π,它以'%pi'来表示。自然常数e:%e。虚数i:%i。如对这些常数重新宣告会出现错误讯息。
变量的类型
scilab的数据类型分为三大类,标量式、矩阵式和特殊数据类型。
标量式和矩阵式都包含如下几种基本类型: 数值类型、布尔类型、多项式类型和字符串类型。特殊数据类型包括表(list)和函数。
数值类型
如matlab一样,scilab的变量可以不经定义直接赋值。不同的是,引用系统预定的变量需加上%,如得到常量pi的值,需使用%pi,
类似的如虚数单位%i,布尔值%t,%f等等。
布尔类型
可通过关系关系运算符产生布尔类型的变量。要得到布尔类型的字面常量,可以用%t,%f,%T,%F。
多项式类型
生成多项式用poly函数。
[p] = poly(a,"x",["flag"])。
a是矩阵或向量(包括标量)
x 是符号变量
flag是可选参数
若a是矩阵,则不需flag参数。返回矩阵x*E- a 的特征多项式,E为与a同维的单位矩阵 。
若a是向量(含标量情形),返回结果与flag有关。若flag为roots(默认值),则返回自变量是x,以向量a的个元素为根的多项式。例如,
-->p = poly(0,"x","roots")。
然后可利用返回结果运算得到新的多项式:
-->q = 1+2*p +p^2。
也可直接指定系数生成多项式
--> p =poly([1 2 1] ,"x","coeff") 。
字符串类型
用单引号或双引号表示字符串。在scilab中,字符串被当作一种基本类型而不是字符数组来看待。因此,在用字符串构成矩阵的时候没有对字符串长度的限制。例如,
-->s =['this' 'is' ; 'a' 'string']。
'this'与'a'长度不需要相同。
矩阵生成
直接输入
可以使用同Matlab一样的语法来输入矩阵,如。
A = [1 0; 0 1]
行分隔符用分号;或者换行符,列分隔符用逗号,或空格,首尾用[,]括起来。数据必须是同一基本类型,不能把数值和字符串混用。但布尔类型可作为数值类型(0和1)而与数值类型混用,数值类型可作为多项式与多项式混用。
使用start:increment:end双目运算符生成向量。
例如
--> x=0:0.1:10;。
使用函数
可用linspace得到均匀分布的向量。
[v] = linspace(x1,x2,[,n])。
v: 从x1到x2均匀分布的n个数,n可省,缺省值为100。
eye 生成单位矩阵
x = eye(m,n) 生成mxn维的对角线为1,其它元素为0的矩阵。
x = eye(A) 生成与矩阵A同维的单位矩阵,若A是标量,结果为1。
x = eye() 生成维数不定的单位矩阵,当它与其它维数确定的矩阵相加时自动转为相应维数的矩阵。
基本运算符
加减乘除:+ - * /
自然数的次方:ex 在scilab上,要写成:exp(x) 。
绝对值:abs(),例如:abs(-3) Ans= 3. 。
矩阵转数值:在算符前加上".",为什么要这么做?因为Scilab在运算时,基本上都是把那些数值当做矩阵来看待的。当你打了一大串的数值串要做运算时,却出现了错误讯息。就有可能要考虑此状况了,这时就要将乘或除与exp(),sin(),cos()等等的运算式前加上点号。例如:.*,./,.exp()等等,例如:3*t.*exp(sin(t))。
(注意:指令尾端的';'号,加上则运算结果将不会输出至萤幕上,不加则效果反之 。)。
另外还有次方算符:^ (例如2的3次方23:2^3) 。
开根号:sqrt()
(例如表示成sqrt(2),也可以直接用2^(1/2)或2^(0.5)表示。)。
括号:()在运算时只能使用'()',其他的括号类型有别的用途,不能在此使用。
运算符:log系列
log():这是以自然数e=2.7182818为底的对数。这种对数在数学上是以ln来表示之。
log2():以2为底的对数。
log10():以10为底的对数,也是我们最熟悉的一种对数之一。
其它少见的log指令:
log1p(x):等同于log(1+x) 。
logspace():以对数方式从a,b取n等分。例如:logspace(0,2,300):0到2之间取300等份 。
三角函数
三种:sin(),cos(),tan().至于cot,sec,csc这三个函数Scilab并没有设计,不过使用:1/sin() , 1/cos() , 1/tan()这样的格式即可解决。
三个反函数:asin(),acos(),atan(). 。
双曲线函数
这是一个跟三角函数相似但内容完全不同的函数。此类函数与e有关。
三个:sinh(),cosh(),tanh() 。
三个反函数:asinh(),acosh(),atanh() 。
向量和矩阵运算
矩阵函数
统计分析函数
多项式运算
复数运算
Scilab语言
介绍Scilab编程语言
.....B
变量定义
......
if条件判断
......
for循环
......
while循环
......
函数定义
......
函数调用
......
计算结果可视化
计算结果可视化
二维平面绘图
三维立体绘图
工具箱开发
本文档来源于 http://www.scilab.org/product/toolbox_guide/html/toolbox.html 页面中的英文文档,编写自己的工具箱,除了参考此文档,也可以参考一些成熟的工具箱的代码和代码组织方式。
工具箱结构
工具箱的根目录名为工具箱的名字(比如mytoolbox),它包含8个子目录:
macros: Scilab宏 (例如用Scilab代码写的,以.sci为文件名扩展名的函数),buldmacros宏和loadmacros宏脚本。
src: 源代码(所有的 .c 和 .f 文件),一个 buildsrc脚本 。
sci_gateway: 接口程序,和一个buildsci_gateway 。
help: 英语和法语帮助,其子目录明分别为eng和fr,里面包含.xml帮助文件,buildhelp和loadhelp脚本。
etc: .html, .pdf, .txt, .jpeg, ... 。
unit tests: .tst files (测试你的工具箱的脚本)
demos: 各种展示你的工具箱的例子。
includes: .h 文件。
和四个文件:
readme.txt: 工具箱描述和安装说明。
builder.sce: 主builder 。
loader.sce: 主loader 。
license.txt: 协议 。
还有什么问题看一下这个网站
http://www.scilab.org.cn/?q=book/export/html/12。
http://fsa.ia.ac.cn/mediawiki/index.php?title=Scilab%E4%B8%AD%E6%96%87%E6%95%99%E7%A8%8B&curid=6433&diff=6592&oldid=0 。
这里有它• 电子版的scilab教程 自己去学习一下 印象深刻 些 。
Scilab操作入门
介绍界面,帮助,demo等使用方法 。
命令提示符: -->
scilab的命令提示符是--> , 在该提示符下可以输入命令。 在运行demo时会有暂停,此时显示的提示符>>只是等待用户按Enter键,不能输入命令。 在菜单Control-> stop可以暂时停止demo的执行,之后命令提示符变为-1->, 此时可以输入命令。 使用resume命令或者选择菜单Control->resume 可以恢复demo的执行。 使用abort命令或选择菜单Control->abort可以放弃demo的执行,命令提示符重新变为-->. 。
数值运算
基本运算
在指令界面的 '-->'之后,即可输入运算字串。例子:
--> 1+1 //按下[Enter] 。
Ans =
2.
--> log(10) //按下[Enter] 。
Ans =
2.3025851
变量与常量
在scilab中变量的宣告是很自由的,几乎大部分的字串皆可以成为变量。例如x=3;a2=14;......但是变量开头不可以是数字。同时也不可以将Scilab内定常数更改它的数值。
Scilab的内定常数多半以'%'开头,例如圆周率π,它以'%pi'来表示。自然常数e:%e。虚数i:%i。如对这些常数重新宣告会出现错误讯息。
变量的类型
scilab的数据类型分为三大类,标量式、矩阵式和特殊数据类型。
标量式和矩阵式都包含如下几种基本类型: 数值类型、布尔类型、多项式类型和字符串类型。特殊数据类型包括表(list)和函数。
数值类型
如matlab一样,scilab的变量可以不经定义直接赋值。不同的是,引用系统预定的变量需加上%,如得到常量pi的值,需使用%pi,
类似的如虚数单位%i,布尔值%t,%f等等。
布尔类型
可通过关系关系运算符产生布尔类型的变量。要得到布尔类型的字面常量,可以用%t,%f,%T,%F。
多项式类型
生成多项式用poly函数。
[p] = poly(a,"x",["flag"]) 。
a是矩阵或向量(包括标量)
x 是符号变量
flag是可选参数
若a是矩阵,则不需flag参数。返回矩阵x*E- a 的特征多项式,E为与a同维的单位矩阵 。
若a是向量(含标量情形),返回结果与flag有关。若flag为roots(默认值),则返回自变量是x,以向量a的个元素为根的多项式。例如,
-->p = poly(0,"x","roots") 。
然后可利用返回结果运算得到新的多项式:
-->q = 1+2*p +p^2 。
也可直接指定系数生成多项式
--> p =poly([1 2 1] ,"x","coeff") 。
字符串类型
用单引号或双引号表示字符串。在scilab中,字符串被当作一种基本类型而不是字符数组来看待。因此,在用字符串构成矩阵的时候没有对字符串长度的限制。例如,
-->s =['this' 'is' ; 'a' 'string'] 。
'this'与'a'长度不需要相同。
矩阵生成
直接输入
可以使用同Matlab一样的语法来输入矩阵,如 。
A = [1 0; 0 1] 。
行分隔符用分号;或者换行符,列分隔符用逗号,或空格,首尾用[,]括起来。数据必须是同一基本类型,不能把数值和字符串混用。但布尔类型可作为数值类型(0和1)而与数值类型混用,数值类型可作为多项式与多项式混用。
使用start:increment:end双目运算符生成向量 。
例如
--> x=0:0.1:10; 。
使用函数
可用linspace得到均匀分布的向量。
[v] = linspace(x1,x2,[,n]) 。
v: 从x1到x2均匀分布的n个数,n可省,缺省值为100。
eye 生成单位矩阵
x = eye(m,n) 生成mxn维的对角线为1,其它元素为0的矩阵 。
x = eye(A) 生成与矩阵A同维的单位矩阵,若A是标量,结果为1 。
x = eye() 生成维数不定的单位矩阵,当它与其它维数确定的矩阵相加时自动转为相应维数的矩阵 。
基本运算符
加减乘除:+ - * /
自然数的次方:ex 在scilab上,要写成:exp(x) 。
绝对值:abs(),例如:abs(-3) Ans= 3. 。
矩阵转数值:在算符前加上".",为什么要这么做?因为Scilab在运算时,基本上都是把那些数值当做矩阵来看待的。当你打了一大串的数值串要做运算时,却出现了错误讯息。就有可能要考虑此状况了,这时就要将乘或除与exp(),sin(),cos()等等的运算式前加上点号。例如:.*,./,.exp()等等,例如:3*t.*exp(sin(t)) 。
(注意:指令尾端的';'号,加上则运算结果将不会输出至萤幕上,不加则效果反之 。) 。
另外还有次方算符:^ (例如2的3次方23:2^3) 。
开根号:sqrt()
(例如表示成sqrt(2),也可以直接用2^(1/2)或2^(0.5)表示。) 。
括号:()在运算时只能使用'()',其他的括号类型有别的用途,不能在此使用。
运算符:log系列
log():这是以自然数e=2.7182818为底的对数。这种对数在数学上是以ln来表示之。
log2():以2为底的对数。
log10():以10为底的对数,也是我们最熟悉的一种对数之一。
其它少见的log指令:
log1p(x):等同于log(1+x) 。
logspace():以对数方式从a,b取n等分。例如:logspace(0,2,300):0到2之间取300等份 。
三角函数
三种:sin(),cos(),tan().至于cot,sec,csc这三个函数Scilab并没有设计,不过使用:1/sin() , 1/cos() , 1/tan()这样的格式即可解决。
三个反函数:asin(),acos(),atan(). 。
双曲线函数
这是一个跟三角函数相似但内容完全不同的函数。此类函数与e有关。
三个:sinh(),cosh(),tanh() 。
三个反函数:asinh(),acosh(),atanh() 。
向量和矩阵运算
矩阵函数
统计分析函数
多项式运算
复数运算
Scilab语言
介绍Scilab编程语言
.....B
变量定义
......
if条件判断
......
for循环
......
while循环
......
函数定义
......
函数调用
......
计算结果可视化
计算结果可视化
二维平面绘图
三维立体绘图
工具箱开发
本文档来源于 http://www.scilab.org/product/toolbox_guide/html/toolbox.html 页面中的英文文档,编写自己的工具箱,除了参考此文档,也可以参考一些成熟的工具箱的代码和代码组织方式。
工具箱结构
工具箱的根目录名为工具箱的名字(比如mytoolbox),它包含8个子目录:
macros: Scilab宏 (例如用Scilab代码写的,以.sci为文件名扩展名的函数),buldmacros宏和loadmacros宏脚本。
src: 源代码(所有的 .c 和 .f 文件),一个 buildsrc脚本 。
sci_gateway: 接口程序,和一个buildsci_gateway 。
help: 英语和法语帮助,其子目录明分别为eng和fr,里面包含.xml帮助文件,buildhelp和loadhelp脚本。
etc: .html, .pdf, .txt, .jpeg, ... 。
unit tests: .tst files (测试你的工具箱的脚本)
demos: 各种展示你的工具箱的例子。
includes: .h 文件。
和四个文件:
readme.txt: 工具箱描述和安装说明。
builder.sce: 主builder 。
loader.sce: 主loader 。
license.txt: 协议 。
还有什么问题看一下这个网站
http://www.scilab.org.cn/?q=book/export/html/12。