scilab中文帮助手册p_第1页
scilab中文帮助手册p_第2页
scilab中文帮助手册p_第3页
scilab中文帮助手册p_第4页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、(1)程序设计programming:abort:中断计算说明: abort 命令中断当前计算并给出 Scilab 的提示符 ( “ - >”) 。如果用户使用 pause 命令进入高层界面,可使用 abort 命令回到初始层界面,出现 Scilab 的提示符 ( “ - >”) 。 Ans: 计算结果说明:如果表达式的值没有被赋与任何变量,那么 Scilab 自动产生一个变量 Ans,用来存储当前表达式的值。backslash ():矩阵左除调用格式:如 x=Ab说明: backslash ()代表矩阵左除, x=Ab 是方程 A*x=b 的解。如果 A 是一个方阵或者可逆矩阵

2、(nonsingular或者 invertible),那么 x=Ab 是方程 A*x=b的唯一确定的解,且等于x=inv(A)*b.(通俗的说,就是方程数目等于未知数个数,所以解唯一。如A=1 2 1;3 2 2;2 31,b=8;13;11)如果 A 不是一个方阵,那么x 是最小二乘解,此时,该解x 使 norm(A*x-b) 最小。(通俗的说,就是方程数目不等于未知数个数。如果方程数目大于未知数个数, 本来是没有准确解的, 但可以根据最小二乘法原理拟合出最佳解。如 A=rand(3,2);b=1;1;1 。此时,由于 A 不是一个方阵,无法使用 inv(A) 命令,因此 x=Ab 等效于

3、x=pinv(A)*b.如果方程数目小于未知数个数, 应该有无穷个解,用 x=Ab 命令得出的解只是其中的一个解,而用 pinv(A)*b 命令得出的解则比较粗糙,没有用 x=Ab 命令得出的解精确。)如果A 是一个列满秩矩阵(矩阵的秩等于列数),那么此最小二乘解x=Ab 是唯一能使norm(A*x-b) 最小的解。如果A 不是一个列满秩矩阵,那么此最小二乘解norm(A*x-b) 最小的解应该是x=pinv(A)*b )。inv(A) 要求 A是方阵, pinv(A) 则不要求 A 是方阵bool2s:将布尔矩阵转化为0、1 矩阵x=Ab不能使norm(A*x-b)最小,使调用格式: boo

4、l2s(x)参数: x 是一个布尔向量或者布尔矩阵或者常数矩阵。说明:如果 x 是一个布尔矩阵, bool2s(x) 返回一个 0、 1 矩阵, 1 代表真, 0 代表假。如果x 是一个普通矩阵, bool2s(x) 也返回一个 0、1 矩阵, 1 代表非 0 的数字。boolean :它表示 Scilab 对象或者布尔型变量和操作符与或非 & | 说明:布尔型变量为 %T(代表真) %F (代表假 ) 。这些变量可以用来定义矩阵。布尔型型矩阵可以像普通矩阵操作,如元素的抽取、插入与连接,但不能进行如( +, *, -, , )等运算,布尔型型矩阵有三个特殊的操作符号:与或非&

5、 | brackets括号:包括左右圆括号 () ,左右方括号 .方括号调用格式: a11,a12,.;a21,a22,.;.圆括号调用格式 : s1,s2,.=func(.)参数 a11,a12,. :任何合适的矩阵( 实数 ,参数 s1,s2,. :任何变量名 ;多项式 ,有理数等);说明: 用于向量定义或者矩阵连接或者用在调用函数的左边存储变量,而()用于函数调用。 在用于矩阵连接时,空格、逗号用来隔开每“行”中的元素,分号、回车则用来隔开各“行”。 用在调用函数的左边存储变量时,必须用逗号隔开个变量。break - 结束循环说明:在 for 或者 while 循环中, break 命令

6、强制结束循环试试看 k=0; while 1=1, k=k+1; if k > 100 thenbreak, end; endcall Fortran or C 用户程序调入调用格式有两种长型y1,.,yk=call("ident",x1,px1,"tx1",.,xn,pxn,"txn","out",ny1,my1,py1,"ty1",.,nyl,myl,pyl,"tyl")短型 y1,.,yk=call("ident",x1.,xn)参数说明:id

7、ent :字符串,代表所要调用的子程序的名字。Xi :实数矩阵或者字符串,代表输入变量pxi,pyi:整数,代表各输入变量在调入 ident程序时的相对位置txi,tyi:字符” d” r ” “c” “i ”,代表输入变量的数据类型,d 代表双精度型, r 代表实型(浮点型), c 代表字符型, I 代表整型。Out:关键词,用来格开输入变量于输出变量。当有Out 时, 表明是长型调入 , 而没有 Out 是短型调入 .ny1, my1 是输出变量的大小功能说明: call命令用于在 scilab 于调入 Fortran or C用户程序,所要调入的程序应该预先与 scilab链接,链接的方

8、法如下:1. 软链接 : 在 scilab 进程中使用命令 link 链接2. 硬链接 : 先用 scilab下已有的程序 (default/作为调入程序 , 再在文件 (default/Flist)中增加一个入口 , 然后再使用命令make bin/scilex与 scilab连接 .call 语句有两种调用形式 , 长型与短型 . 短型调用语法简单 , 能够很快地编译代码 , 但必须写一个小小的 C或者 F 接口程序 . 长型调用则不需要 , 但语法复杂 , 代码解释速度也比较慢 .例子 :C 语言case- 判断语句的关键词说明:用在选择语句 select.case中的关键词 :用法如下

9、 :select表达式 0case表达式 1then程序 1,case表达式 2then程序 2,.case表达式 3then程序 3,else程序 ,end例子 :while %t don=round(10*rand(1,1) namn该命令清除指定全局变量clearglobal('nam1', .,'namn')该命令清除指定全局变量其中 nam1 . namn 为有效的全局变量例子 :global a b ca=1;b=2;c=3;who('global')clearglobal bwho('global')clear -清

10、除变量调用格式 clear a说明 :这个命令用来清除不受保护的变量.cleara 清除指定变量 a, 而 clear 清楚所有不受 predef保护的变量 .正常情况下 , 受保护的变量是指标准库程序和带有百分号的变量, 如 %pi,%t 等.注意语法格式 . 是 clear a 而不是 clear(a).也要注意 a= 并没有清楚 a, 而是把 a 置空 .colon - (:)冒号操作符说明 :该操作符可以用来生成 implicit vectors(不好翻译 , 看下面的例子就明白了 )j:k 生成一个向量 j, j+1,.,k(如果 j>k 则为空集 ).j:d:k生成一个向量

11、j, j+d, ., j+m*d.该操作符可以用来挑选向量或者矩阵中的某一行, 某一列或者某一个元素A(:)是指 A 中的元素按从左到右从上到下的顺序排成的一列 .A(:,j)是指 A 中的第 j 列元素 .A(j:k)是指 A(j),A(j+1),.,A(k)A(:,j:k)是指 A(:,j),A(:,j+1),.,A(:,k)A(:)=w是指用 w将矩阵 A 填满 .comma - (,)列 , 指令与参数分隔符说明 :该操作符用来分隔函数中的参数, 或者用来分隔单行矩阵中的列,空格也可以用来分隔单行矩阵中的列 , 但用逗号更加合适 . 另外也可以用来分隔指令 , 分号 ; 也可以用来分隔

12、指令 , 但不会将结果显示在屏幕上 .例子 :a=1,2,3;4,5,6;a=1,b=1;c=2comments - 注释注释行以说明 :在 for 和 while 循环中 , 命令 continue 使程序转向下一个循环 , 而忽略该次循环中 continue语句和 end 语句之间的指令 . 例子 1:for k=1:10,K=k;if k>2&k<=8 then continue,disp('hello'),end,k,end例子 2:for j=1:2x=;for k=1:10,if k>j+1&k<=8 then continu

13、e,end,x=x,k;end xendDate 显示当前时间命令调用格式: date 或者 date()或者 date ()或者 dt=date()说明: dt=date() 返回一个以格式dd-mmm-yyyy 表明时间的字符串。debug 调试级别调用格式: debug(level-int)或者 level-int=debug()参数: level-int代表一个 0-4 的整数。说明:对于不同的整数,代表了不同的调试级别。definedfields 返回列表变量中已定义元素的索引调用格式: k=definedfields(l)参数: l 是一个列表变量(可以是 list , tlist

14、或者 mlist 类型), k 是返回的索引向量。说明:如果 l是一个列表变量 (list tlist mlist)那么 k=definedfields(l)返回的 k 是列表变量中已定义元素的索引 , 如果元素未定义,则返回一个错误信息。例子:l=list(1);l(3)=5k=definedfields(l)运行结果: k=1. 3. 5.符号调用格式:如 a.*b等说明:该操作符号可用来标志小数点,如和,还可以用来和其他符号组成运算符,比如,可以和(*/')组成(.*,.,./,.,.')运算符,比如 C=A./B 表示 c(i,j) =a(i,j)/b(i,j),克乃内

15、克乘积为“ .*. ”。注意当 (.)符号紧接着一个数字时,它总是表示这个数字的小数点,比如说 2.*x 就表示 *x ,而 2.*x则表示 (2).*x符号的另一个用法是当一行末尾有两个或者两个以上的小数点的时候就表示这一行没有完成,有待继续。do - 循环语句的关键词一般与 while 连用,也可用 for 语句中 elseif :if-then-else 语句中的关键词else : if-then-else语句中的关键词empty - ()空矩镇阵符号 产生一个空矩阵,它的定义很特别,0 行 0 列,也就是说 size() =0,0.根据该属性就有下面的结果:*A=A*=+A=A+=A,

16、A=A,=Ainv() =det()=cond()=rcond()=1, rank()=0当没有明显的答案时,矩阵运算返回空集 或错误信息。注意,空的线性系统(linearsystems,)可能有几行或者几列。例子:s=poly(0,'s'); A = s, s+1;A+, A*A=rand(2,2); AA=A(,1), size(AA)end - 关键词用在循环语句和条件语句的末尾, for, while, if, select必须用 end 来中止。equal - (=)赋值与比较符号=用于把值赋给变量a=b 则表明表达式 a 与表达式 b 相等。对于矩阵对象来说:如果

17、a 与 b 是同类型的矩阵,而且维数也相同,那么 a=b 会逐一比较对应元素,最后返回一个相同维数的布尔型矩阵。如果 a 与 b 是同类型的矩阵,但 a 或 b 中有一个的维数是 1*1 ,即只有一个元素,那么就将该元素逐一与另外一个矩阵中的元素比较,最后返回一个布尔型矩阵。其他情况的比较结果全部返回布尔型变量%f。对于 list列表对象来说:如果 a 与 b 是大小相同的列表,那么 a=b 会逐一比较对应元素,结果返回一个单行的布尔型向量。如果 a 与 b 是大小不同的列表,那么结果返回布尔型变量%f。对于 tlist和 mlist列表对象来说:如果没有定义过载函数,那么操作与 list 列

18、表一样对于其他对象 ( 函数,库 .) 来说:如果对象相同则返回 %t,其他情况则返回 %f.不同数据类型之间的比较返回%f.例子:a=sinu,s=schur(rand(3,3)1:10=41=2errcatch -错误信息捕获命令调用格式:errcatch(n ,'action' ,'option')errcatch()参数:n :整数action, option :字符串说明: 当类型为 n 的错误发生时, errcatch如果 n>0,n 就是捕获的错误类型号;如果 n<0, 表示所有类型的错误都会被捕获;给出一种行为(error-handl

19、er)让计算机执行。action "pause"是以下字符串之一:当计算机捕获这个这个错误就执行暂停,这对调试很有用。可以用whereami()获得当前环境的信息。"continue",忽略当前命令,继续执行下一行命令或可执行文件。可以用iserror函数检查时候有错误发生。别忘了尽可能用 errclear 函数清楚错误。这个选项对于恢复错误很有用。在许多情况下,可以用 execstr函数来代替 errcatch(n,"continue",.)。"kill":默认模式,所有的中介函数都被终止,scilab回到最高层

20、提示符界面。"stop":中断当前 scilab进程,当 scilab被外部程序调用时这个命令很有用。option是 'nomessage' 字符串,用来终止所有错误信息。为了返回默认模式,可以输入 errcatch(-1,"kill") 或者 errcatch(-1) ,errcatch() 是一个旧命令,等效于 errcatch(-1)备注:errcatch()命令是一个旧命令,可以用try命令或者execstr(.,'errcatch')代替errcatch.errclear -错误清除命令调用格式: errclea

21、r(n)说明:清除与错误类型n 对应的行为 (error-handler)。如果 n>0,n 就是所被清除的错误类型号;如果 n<0, 表示所有类型的错误都会被清除(默认);error_table -错误信息表说明:这一页列出预先定义的错误信息表, 以及它们对应的序号。其中一些错误信息是 Scilab 软件自己的剖析器错误 (parser errors)或者特殊内建错误 (specific builtin errors),其他的错误信息比较通用,可以 Scilab 函数中使用。带 * 号的是语句 error(n,pos) 中句柄有关的。(表略) error - error mess

22、ages调用格式:error(message ,n)error(n)error(n,pos)参数:message:一个字符串,要显示的错误信息。n:整数。错误信息的序号。pos : 整数。错误信息的参数。说明:error 函数允许发布一个错误信息来处理错误,默认情况下error 函数停止执行当前命令返回提示符界面。这个默认设置可以用 errcatch 或 execstr(.,'errcatch')函数更改。error(message) 显示 message所代表的错误信息,与此错误信息对应的序号是10000error(message,n)显示 message所代表的错误信息,与

23、此错误信息对应的序号是n,n 应该大与 10000error(n)显示已预定义好了的错误信息,该错误信息的序号是n有一些预定义的错误信息要求有参数,在这种情况下,必须用error(n,pos) 中的 pos 来指定参数值,在其他情况下, pos 参数可以不写。etime -耗时调用格式:e = etime(t2,t1)参数:t2 :是一个 6-10个值的向量t1 :是一个 6-10个值的向量e : t2与 t1 之间的秒数说明:当 t1 和 t2 都是含有 10 个值的向量时,他们的格式必须与getdate函数返回的格式一样。在这种情况下, 它们的第三个,第四个,第五个值都被忽略。当 t1 和

24、 t2 都是含有 6 个值的向量时,他们的格式必须 Year Month Day Hour Minute Second格式一样,其中秒可以精确到毫秒。t1 和 t2 必须大小相同, t1 和 t2 也可以是矩阵,但是该矩阵每一行都必须符合以上所述格式。例子:t1=2004 06 10 17 00 t2=2004 06 10 17 01 E1=etime(t2,t1)t1=2004 06 24 162 5 10 17 00 12 345t2=2004 06 24 162 5 10 17 01 13 965E2=etime(t2,t1)注释:当当 t1 和 t22004 表示年份, 06 表示月份

25、,都是含有 10 个值的向量时,如24 表示周数, 162 表示天数,2004 06 24 162 5 10 17 00 12 3455 表示本周中的第几天(以周日为第一,天),10 表示本月中的第几日, 17 表示时, 00 表示分, 12 表示秒的整数部分, 345 表示秒的小数部分。 evstr - 计算表达式的值调用格式:H=evstr(Z)H,ierr=evstr(Z)参数Z :字符串矩阵 M或者列表 list(M,Subexp)M : 字符串矩阵Subexp :字符串向量H:矩阵ierr :整数 , 误差指示说明:该函数的运算结果返回字符串矩阵 M中表达的的计算结果。 矩阵的每一个

26、元素必须定义一个有效的 Scilab 表达式。如果对 M 中表达式的计算有错,那么,对于返回一个值的表达式 H=evstr(M) 来说,它对错误不予理睬 (raises the error as usual);对于返回二个值的表达式H,ierr=evstr(M)来说,虽然显示出错,但会返回一个出错序号给ierr 。如果 z 是一个列表, subexp 是一个字符串向量,用来定义子字符串,对这些子字符串的计算是在对 M的计算之前。这些子字符串必须要在 M中以 %(k) 的形式提及,其中 k 是字符串向量 subexp 中子表达式的序号。evstr('a=1')是无效语句,请用ex

27、ecstr代替。例子:a=1; b=2;Z='a','b'H=evstr(Z)ierr :整数 , 0或者错误号 .msg :值为 'm' 或'n' 的字符串 . 默认值为 'n'.说明:该命令执行由参数instr所给的指令。如果 'errcatch'没有出现,出错处理照常进行。如果 'errcatch' 出现了,并且在执行指令的过程中产生了错误, 那么 execstr 函数本身不发布出错信息,但它会在出错点上中断执行 instr 指令,并启用错误号为 ierr 的出错信息,在这种情

28、况下,出错信息的显示由 msg选项控制。"m":表示错误信息会显示而且会被记录。"n":不显示出错信息 , 但错误信息也会记录 ( 参考 lasterror命令 ) ,这个是默认选项 .ierr=execstr(instr,'errcatch')可以处理语法错误。例子:execstr('a=1')当按回车之后又继续执行命令7 : 既又暂停,又有提示符,还会显示出每一行命令,这对演示很有用途(7124)exec(fun ,mode)命令以脚本形式执行函数 fun ,没有输入变量,没有输出变量,也没有特殊的变量环境。这种形式很

29、有效,因为脚本代码可以被预编译(参考getf, comp)。这种脚本运算方法允许在库中以函数的形式存储脚本。如果在执行的时候遇到了错误,并且 'errcatch'标志出现了, exec 不会发布出错信息,但它会中断执行指令,并启用错误号为 ierr的出错信息,如果 'errcatch'标志没有出现,标准的出错处理照常进行。例子:mputl('a=1;b=2','c:/exam')exec('c:/exam')foo 返回一个值时,它就会被破坏,对比前后两个whos-name "a " 所产生的结

30、果就可以知道whos -name "a "x=1exec(foo)'disp(exists(''a12''),exists(''a12'',''local'')''disp(exists(''x''),exists(''x'',''local'')')foo(1)a12=;foo(1)exit -结束当前 Scilab 进程说明:结束当前 Scilab进

31、程。external - Scilab对象,外部函数与对象说明:特殊命令下外部函数与程序。一个外部对象( external )就是一个用作高级命令(some high-levelprimitives)参数的函数或者程序,例如 ode , optim , schur等命令外部对象(函数或者程序)的调用次序是由高级命令设置相关参数来决定。例如:比如说外部函数costfunc就是高级命令optim的一个参数,它的调用次序一定要如此:f,g,ind=costfunc(x,ind),然后高级最优化命令optim 按以下方式调用:optim(costfunc,.)这里 costfunc 计算函数分 f (

32、x)的值和它在 x 点处的梯度( ind 是一个整数,它的用处是使结果更加精确化)如果外部对象还需要其它值,这些变量可以在它的环境下定义,当然,他们也可以放在一个列表中。比如说,外部函数 f,g,ind=costfunc(x,ind,a,b,c)。该函数对 optim 是有效的,不过得保证这个外部对象是一个列表list(costfunc,a,b,c),并且对 optim 调用格式如下:optim(list(costfunc,a1,b1,c1),.一个外部对象也可能是Fortran或者 C 程序,这对于提高运算速度有帮助。 这些程序的名字以字符串的形式传给高级命令。程序的调用次序也是规定的,这方

33、面的例子在录之下。外部 Fortran 或者 C程序也能够被动态的调用。extraction -矩阵或列表元素的提取routines/default目调用格式x(i,j)x(i).=l(i).=l(k1).(kn)(i) or .=l(list(k1,.,kn,i)l(k1).(kn)(i,j) or l(list(k1,.,kn,list(i,j)参数:x :各种类型的矩阵l :列表变量i,j :索引k1,.kn :索引说明:矩阵:i 和 j 可以实数标量,向量,或者正元素矩阵*r=x(i,j)命令建立一个矩阵r ,其中元素r(l,k)=x(int(i(l),int(j(k),其中int(i

34、(l)是取整命令,即取 i(l)的整数部分。到向量 j 的总个数 size(j,'*'),注意 i 和)与列数( size(x,2)).例子:jl 的取值从 1 到向量 i 的总个数的最大值必须小于或者等于矩阵size(i,'*')x 的行数(,k 的取值从size(x,1)1x= ; ;.32 i=1:3 j=2:4 r=x(i,j) *;.47 如果 x 是一个 1x1 矩阵,那么的矩阵,而 rr=x(i)命令建立这样一个矩阵r ,其中i必须是一个元素为1(l,k)=x(int(i(l),int(i(k),l的取值从1 到矩阵i的行数( size(i,1))

35、,k 的取值从1 到矩阵i的列数( size(x,2)例子:)i=1 1 1;1 1 1x(i)*如果 x 是一个行向量,那么 r=x(i)命令建立这样一个向量 r ,其中 i 也是一个向量(如 i=1:3 ),r(l)=x(int(i(l),l 的取值从 1到向量 i 的总个数 size(i,'*'), i的最大值必须小于或者等于向量 x的总个数 size(x,'*') .x=i=1:3r=x(i)*如果 x 是一个多行多列的矩阵, 那么 r=x(i) 命令建立这样一个列向量r ,i 也是一个向量(如i=1:7 ),r(l) (l的取值从 1到向量 i的总个数

36、 size(i,'*'),至于如何赋值,请参见例子 i 的最大值必须小于或者等于向量 x 的总个数 size(x,'*') .x= ; ;.32 ; .47 i=1:7r=x(i)*(:)冒号代表所有的元素* r=x(i,:)建立一个矩阵 r ,其中r(l,k)=x(int(i(l),k), l 的取值从 1 到向量 i的总个数 size(i,'*'),k 的取值从 1 到矩阵 x 的总列数 size(x,2)x=;.32; .47 i=1:3r=x(i,:)* r=x(:,j)建立一个矩阵r ,其中 r(l,k)=x(l,int(j(k),l

37、的取值从 1 到矩阵 x 的总行数 size(x,1),k 的取值从 1 到向量 j 的总个数 size(j,'*').x=;.32; .47 j=1:3r=x(:,j)*r=x(:)建立一个列向量,这个列向量是按从左到右的顺序把每一列串连起来组成的,它等效于 matrix(x,size(x,'*'),1) .- 布尔型向量 .如果索引变量 (i or j) 是布尔型向量,那么 scilab 执行 find(i) 或者 find(j) 命令,找出其中的为真的序号,且看以下例子:x=;.32; .47 i=%t %t;%f %f;%t %t;%f %f;%t %t

38、;%f %ffind(i)x(i)- 多项式 .如果索引变量 (i or j)是多项式向量或者隐形多项式向量,那么scilab执行 horner(i,m)或者horner(j,n)命令,其中 m和 n 与 x 的维数有关,为了增加可读性,我们建议使用$符号。例子Fortran调用的情况下, 函数f必须在子程序中定义( 在文件夹SCIDIR/routines/default中)例子 :deff('z=f(x,y)','z=x2+y2');feval(1:10,1:5,f)deff('z=f(x,y)','z=x+%i*y');fev

39、al(1:10,1:5,f)feval(1:10,1:5,'parab')feval(1:10,'parab')find -查找布尔型向量或者矩阵的元素索引调用格式ii=find(x ,nmax)i1,i2,.=find(x ,nmax)参数x :可能是一个布尔型向量,布尔型矩阵 ,布尔型超级矩阵 ,标准矩阵或者超级矩阵 .nmax : 返回一个最多的索引个数 . 默认值为 -1, 代表搜索所有元素 . 这个选项对于避免搜索所有索引很有效 .ii, i1, i2, . :整型索引向量或者空矩阵.说明 :如果 x 是一个布尔型矩阵ii=find(x)返回值为真的元

40、素索引, 如果没有元素值为真 , 则返回一个空矩阵 .i1,i2,.=find(x)返回索引向量 i1( 行) 与 i2( 列 ), 如果没有符合条件的元素, 则返回一个空矩阵 .如果 x 是一个标准矩阵或者超级矩阵,find(x)则等效于 find(x<>0)find()返回 例子 :ExamplesA=rand(1,20);w=find(A<A(w)w=find(A>100)B=rand(1,20);w=find(B<,2)的语法是 :for variable=expression ,instruction, . ,instruction,end for va

41、riable=expression do instruction, ,instruction,end如果 expression 是矩阵或者一个行向量,那么 variable 依次取矩阵每一列的值有用的例子:for variable=n1:step:n2, .,end如果 expression 是一个列表变量,那么variable依次取列表中的元素。例子:n=5;for i = 1:n, for j = 1:n, a(i,j) = 1/(i+j-1);end;endfor j = 2:n-1, a(j,j) = j; end; afor e=eye(3,3),e,endfor v=a, writ

42、e(6,v),endfor j=1:n,v=a(:,j), write(6,v),endfor l=list(1,2,'example'); l,endfunptr - coding of primitives ( wizard stuff )(暂缺,高级用户使用)getdate -获得日期与时间信息调用格式dt=getdate()x=getdate("s")dt=getdate(x)参数dt :包含 10 个整型元素的向量x : 一个整数,表示自 1970 年 1 月 1 日到某一天的秒数说明:dt=getdate()按以下格式返回当前的时间信息dt(1)

43、:年份从 0000 到 9999.dt(2):月份从 01到 12.dt(3):按 ISO 8601 标准计算的周数从01 到 53.dt(4):按古罗马日历计算的天数字从001 到 366.dt(5):周数, 1 代表星期天 .dt(6):日数从 01到 31.dt(7):时数从 00到 23.dt(8):分数从 00 and 59.dt(9):秒数从 00 and 59.dt(10):毫秒数 从 000 and 999.x=getdate("s") 返回一个整数,它表示自 1970年 1 月 1 日 00:00 UTC(Unix Time Convention) 以来所

44、经过的秒数 .dt=getdate(x)结合上面一句,运行一下这个命令就知道什么意思了:)例子:w=getdate()mprintf("Year:%d,Month:%d,Day:%d",w(1),w(2),w(6);x=getdate("s")getdate(x)getenv -获得环境变量的值调用格式:env=getenv(str , rep )参数:str :字符串,用来指定环境变量的值rep :可选字符串 .当使用了这个选项,函数getenv 没有找到 str所指定环境变量,则返回 rep 的值env :字符串,包含了环境变量的值说明:返回已存在的

45、环境变量的值例子:getenv('SCI')getenv('FOO','foo')getfield -列表域的提取调用格式x,.=getfield(i,l)参数x :任何类型的矩阵l : list, tlist或者 mlisti :域索引 ,参考 extraction变量获得更多细节.说明:这个函数等效于 x,.=l(i) ,都是用来提取表中的域, 两者唯一不同是前者可以用于 mlist 对象 .getpid -获得 Scilab 进程号调用格式id=getpid()说明返回一个表示 Scilab 进程号的整数例子:d='SD_'

46、+string(getpid()+'_'getversion -获得 Scilab版本信息调用格式version=getversion()version,opts=getversion()参数version :字符串opts : 一个包含四个元素的字符串向量 : compiler,pvm,tk,ocaml 例子:getversion()version,opts=getversion()global -定义全局变量调用格式global('nam1',.,'namn')global nam1 . namn参数nam1,., namn :有效的变量名字

47、说明:通常来讲,每一个 scilab 函数都有自己的局域变量, 但 global 关键词声明的变量能够在函数间相互使用,当一个函数改变了该全局变量,其他所有利用该变量函数都回受到影响。如果开始时全局变量不存在, 那么当你发布全局变量声名的时候,它将初始化成一个空矩阵。b 被理解为 (123).b ,在这种情况下,点是操作符的一部分,而不是数字的一部分。host -执行 Unix 或者 DOS的命令调用格式:stat=host(command-name)参数:command-name : 含有 Unix sh命令的字符串stat :一个整数标志说明:发送一个字符串 command-name给 Unix 命令解释器执行( Unix 下是 SH,DOS下是),如果 host 没有被调用,则 stat 返回 -1 ,否则命令解释器代码。例子:超级矩阵是mlists: mlist('hm','dims','entries',sz,v),其中sz行向量而v 是列向量。例子:a(1,1,1,1:2)=1 2a=1 2;3 4;a(:,:,2)=rand(2,2)a(1,1,:)a ahypermat -对 N维的矩阵进

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论