Scilab 5.3.3下模块的移植、在线帮助的编写以及工具箱的建立
- 格式:docx
- 大小:868.10 KB
- 文档页数:17
科学计算自由软件SCILAB基础教程(可编辑)科学计算自由软件SCILAB基础教程第 1 章SCILAB 简介1.1 引言1.2 SCILAB 软件的构成1.3 安装 SCILAB 的系统需求1. 4 SCILAB 主窗口介绍图1.1 SCILAB 3.0 的主窗口图1.2 SCILAB 3.0 的文件菜单项图1.3 SCILAB 3.0 的编辑菜单项图1.4 SCILAB 的选择菜单项图1.5 SCILAB 的控制菜单项图1.6 SCILAB 的编辑器窗口图1.7 SCILAB 的应用窗口图1.8 SCILAB 的帮助窗口1.5 SCILAB 中的基本操作与预定对象SCILAB 中的文件操作1(5(2 界面层次的控制操作SCILAB 主窗口中的快捷键操作SCILAB 中预先定义的对象图1.9 who 指令后的SCILAB 主窗口图1.10 whos 指令后的SCILAB 主窗口1. 6 谈谈如何学习 SCILAB图1.11 SCILAB 的演示窗口图1.12 SCILAB 的选择图形演示窗口图1.13 SCILAB 的选择图形演示窗口图1.14 SCILAB 的一个图形信息窗口图1.15 SCILAB 的一个图形演示窗口第 2 章数据类型2.1 引言2.2 特定符号与常数特定符号特定常数2. 3 标量的数值计算2.4 数值型向量与矩阵的定义及基本运算数值型向量与矩阵的定义数值型向量与矩阵的运算2.5 与数值型矩阵有关的若干常用函数常用矩阵的生成函数size 函数和 matrix 函数从已知矩阵提取部分元素来构成同阶新矩阵的若干函数与方阵的行列式求值、求逆、线性代数方程组的求解、求矩阵特征值与特征向量等有关的函数与矩阵(数组)或向量有关的数据统计函数2(6 向量与矩阵(数组)元素的引用2(7 整型数组2. 8 布尔型向量与矩阵的定义及基本运算2.9 字符串型数据的定义与运算字符串的定义字符串的运算与处理字符串有关的一些常用函数2.10 多项式类型多项式的定义多项式运算有关多项式的几个常用函数2.11 表类型表类型的定义表类型数据的引用,域的插入与删除tlist 和 mlist 类型第 3 章 SCILAB 中的程序设计、脚本文件与函数3.1 引言3.2 顺序结构程序设计赋值语句输入输出语句3.3 选择结构程序设计if 语句图3.1 不完整if 语句的框图图3.2 完整if 语句的框图select_case 语句图3.3 select 语句框图(else 缺省情形)3.4 循环结构程序设计for 语句图3.4 for 语句的框图while 语句图3.5 while 型循环框图循环语句的嵌套(多重循环语句)continue 语句和 break 语句图3.6 循环体内含有continue 语句的框图图3.7 循环体内含有break 语句的框图3.5 脚本文件与函数脚本文件函数局部变量与全局变量、函数的嵌套定义与递归调用图3.8 用递归调用求 n!示意图(n 4 )有关程序调试的几个常用指令3.6 函数的应用函数名作形式参数――二分法求非线性方程的根图3.9 用二分法求方程p (x ) 0 的根的框图函数的递归调用――求两正整数的最大公因子图3.10 用递归调用求n!示意图多重循环的应用――线性方程组的顺序消元法图3.11 顺序消元法的框图第 4 章计算结果可视化4.1 引言图4.1 图形窗口图4.2 图形窗口的文件菜单图4.3 图形窗口的工具菜单图4.4 图形窗口的编辑菜单4.2 二维图形的绘制plot 指令图4.5 利用指令plot (y,'X', 'Y', 'y f(x )' )画图图4.6 利用指令plot 在同一窗口画两条曲线图4.7 利用指令plot (x,y )画图图4.8 利用指令plot (z,y )在同一窗口画两条曲线plot2d 指令图4.9 利用指令plot2d (x,y )画y sinx 的图形图4.10 利用指令plot2d (x,y )在同一窗口画两条曲线图4.11 利用指令plot2d (x,y, 画曲线y sinx图4.12 利用指令plot2d (x,y, opt+args )在同一窗口画三条曲线图4.13 利用指令plot2d2 (x,y )画曲线y sin2x图4.14 利用指令plot2d3 (x,y )画曲线y sin2x图4.15 利用指令plot2d4 (x,y )画曲线y sin2x4.3 三维图形的绘制函数plot3d( )――三维曲面的绘制图4.16 利用指令plot3d (x,y …)画曲面z sinxcosy图4.17 利用指令plot3d (x,y …)画曲面z x2+y2图4.18 利用指令plot3d (x,y …)画曲面z xy图4.19 利用指令plot3d (x,y …)画曲面z sinxcosy 图4.20 利用指令plot3d 在同一坐标系中画两张曲面函数param3d――三维空间曲线的绘制图4.21 利用指令param3d 画螺旋线图图4.22 利用指令param3d 在同一坐。
Scilab 常⽤指令⼀览表1 通⽤指令help 在线帮助apropos ⽂档中关键词搜寻ans 缺省变量名以及最新表达式的运算结果clear 从内存中清除变量和函数exit 关闭scilabquit 退出scilabsave 把内存变量存⼊磁盘exec 运⾏脚本⽂件mode ⽂件运⾏中的显⽰格式getversion 显⽰scilab版本ieee 浮点运算溢出显⽰模式选择who 列出⼯作内存中的变量名edit ⽂件编辑器type 变量类型what 列出scilab基本命令format 设置数据输出格式chdir 改变当前⼯作⽬录getenv 给出环境值mkdir 创建⽬录pwd 显⽰当前⼯作⽬录evstr 执⾏表达式2 运算符和特殊算符+ 加- 减* 矩阵乘.* 数组乘^ 矩阵乘⽅.^ 数组乘⽅\ 反斜杠或左除/ 斜杠或右除./或.\ 数组除== 等号~= 不等号< ⼩于> ⼤于<= ⼩于等于>= ⼤于等于&,and 逻辑与|,or 逻辑或-,not 逻辑⾮:冒号()圆括号[] ⽅括号{} 花括号. ⼩数点,逗号;分号// 注释号= 赋值符号' 引号' 复数转置号.' 转置号ans 最新表达式的运算结果%eps 浮点误差容限%i 虚数单位%inf 正⽆穷⼤%pi 圆周率3 编程语⾔结构abort 中⽌计算或循环break 终⽌最内循环case 同select⼀起使⽤continue 将控制转交给外层的for或while循环else 同if⼀起使⽤elseif 同if⼀起使⽤end 结束for,while,if语句for 按规定次数重复执⾏语句otherwise 可同switch⼀起使⽤select 多个条件分⽀then 同if⼀起使⽤while 不确定次数重复执⾏语句eval 特定值计算feval 函数特定值计算或多变量计算function 函数⽂件头global 定义全局变量isglobal 检测变量是否为全局变量error 显⽰错误信息lasterror 显⽰最近的错误信息sprintf 按格式把数字转换为串warning 显⽰警告信息4 基本数学函数acos 反余弦acosh 反双曲余弦acot 反余切acoth 反双曲余切acsc 反余割acsch 反双曲余割asin 反正弦asinh 反双曲正弦atan 反正切atanh 反双曲正切cos 余弦cosh 双曲余弦cot 余切coth 双曲余切sin 正弦sinh 双曲正弦tan 正切tanh 双曲正切exp 指数log ⾃然对数log10 常⽤对数log2 以2为底的对数sqrt 平⽅根abs 绝对值conj 复数共轭imag 复数虚部real 复数实部ceil 向正⽆穷⼤⽅向取整floor 向负⽆穷⼤⽅向取整fix 向零⽅向取整round 四舍五⼊取整sign 符号函数gsort 降次排序erf 误差函数erfc 补误差函数gamma gamma函数interp 插值函数interpln 线性插值函数intsplin 样条插值函数smooth 样条平滑函数spline 样条函数quarewave ⽅波函数double 将整数转换为双精度浮点数5 基本矩阵函数和操作eye 单位矩阵zeros 全零矩阵ones 全1矩阵rand 均匀分布随机阵genmarkov ⽣成随机Markov矩阵linspace 线性等分向量logspace 对数等分向量logm 矩阵对数运算cumprod 矩阵元素累计乘cumsum 矩阵元素累计和toeplitz Toeplitz矩阵disp 显⽰矩阵和⽂字内容length 确定向量的长度size 确定矩阵的维数diag 创建对⾓矩阵或抽取对⾓向量find 找出⾮零元素1的下标rot90 矩阵逆时针旋转90度sub2ind 全下标转换为单下标tril 抽取下三⾓阵triu 抽取上三⾓阵conj 共轭矩阵companion 伴随矩阵det ⾏列式的值norm 矩阵或向量范数nnz 矩阵中⾮零元素的个数null 清空向量或矩阵中的某个元素orth 正交基rank 矩阵秩trace 矩阵迹cond 矩阵条件数inv 矩阵的逆rcond 逆矩阵条件数lu LU分解或⾼斯消元法pinv 伪逆qr QR分解givens Givens变换linsolve 求解线性⽅程lyap Lyapunov⽅程hess Hessenberg矩阵poly 特征多项式schur Schur分解expm 矩阵指数expm1 矩阵指数的Pade逼近expm2 ⽤泰勒级数求矩阵指数expm3 通过特征值和特征向量求矩阵指数funm 计算⼀般矩阵函数logm 矩阵对数sqrtm 矩阵平⽅根6 特性值与奇异值spec 矩阵特征值gspec 矩阵束特征值bdiag 块矩阵,⼴义特征向量eigenmar- 正则化Markov特征kov 向量pbig 特征空间投影svd 奇异值分解sva 奇异值分解近似7 矩阵元素运算cumprod 元素累计积cumsum 元素累计和hist 统计频数直⽅图max 最⼤值min 最⼩值mean 平均值median 中值prod 元素积sort 由⼤到⼩排序std 标准差sum 元素和trapz 梯形数值积分corr 求相关系数或⽅差8 稀疏矩阵运算sparse 稀疏矩阵adj2sp 邻接矩阵转换为稀疏矩阵full 稀疏矩阵转换为全矩阵mtlb_sparse 将scilab稀疏矩阵转换为matlab稀疏矩阵格式sp2adj 将稀疏矩阵转换为邻接矩阵speye 稀疏矩阵⽅式单位矩阵sprand 稀疏矩阵⽅式随机矩阵spzeros 稀疏矩阵⽅式全零阵lufact 稀疏矩阵LU分解lusolve 稀疏矩阵⽅程求解spchol 稀疏矩阵Cholesky分解9 输⼊输出函数diary ⽣成屏幕⽂本记录disp 变量显⽰file ⽂件管理load 读已经存在的变量mclose 关闭⽂件mget 读⼆进制⽂件mgetl 按⾏读ascii码⽂件mgetstr 读字符串中单个字mopen 打开⽂件mput 写⼆进制⽂件mfscanf 读ascii码⽂件print 将变量记录为⽂件read 读矩阵变量save 将变量存为⼆进制⽂件startup 启动⽂件write 按格式存⽂件xgetfile 对话⽅式获取⽂件路径x_dialog 建⽴xwindows参数输⼊对话框Tk_Getvar 得到Tk⽂件变量Tk_EvalFile 执⾏Tk⽂件10 函数与函数库操作deff 在线定义函数edit 函数编辑器function 打开函数定义functions scilab函数或对象genlib 在给定⽬录下建⽴所有⽂件的函数库get_function_path 读函数库的⽂件存储⽬录路径getd 读函数库中的全部⽂件getf 在⽂件中定义⼀个函数lib 函数库定义macro scilab函数或对象macrovar 输⼊变量个数newfun 输出变量个数11 字符串操作code2str 将scilab数码转换为字符串convstr 字母⼤⼩转换emptystr 清空字符串grep 搜寻相同字符串part 字符提取str2code 将字符串转换为scilab数码string 字符串转换strings scilab对象,字符串strcat 连接字符stringex 字符串的字符位置搜寻strsubst 字符串中的字符替换12 ⽇期与时间date ⽇期getdate 读⽇期与时间timer cpu时间计时13 ⼆维图形函数plot2d 直⾓坐标下线性刻度曲线champ ⼆维向量场champ1 由颜⾊箭头表⽰的⼆维向量场contour2d 等⾼线图errbar 曲线上增加误差范围框线条grayplot 应⽤颜⾊表⽰的表⾯xgrid 画坐标⽹格线histplot 统计频数直⽅图Matplot 散点图阵列14 三维图形函数plot3d 三维表⾯plot3dl ⽤颜⾊或灰度表⽰的三维表⾯param3d 三维中单曲线param3dl 三维中多曲线contour 三维表⾯上的等⾼线图hist3d 三维表⽰的统计频数直⽅图geom3d 三维向⼆维上的投影15 线条类图形xpoly 单线条或单多边形xpolys 多线条或多多边形xrpoly 正多边形xsegs ⾮连接线段xfpolys 多个多边形内填充xrect 矩形xfrect 单个矩形内填充xfrects 多个矩形内填充xarc 单个弧线段或弧圆xarcs 多个弧线段或弧圆xfarc 单个弧线段或弧圆填充xfarcs 多个弧线段或弧圆填充xarrows 多箭头16 图形注释,变换xstring 图形中字符xstringb 框内字符xtitle 图形标题xaxis 轴名标注plotframe 图形加框并画坐标⽹格线isoview 等尺⼨⽐例显⽰(原图形窗⼝不改变)square 等尺⼨⽐例显⽰(原图形窗⼝改变)xsetech 设置⼩窗⼝xchange 转换实数为图形像素坐标值subplot 设置多个⼦窗⼝17 图形颜⾊及图形⽂字colormap 应⽤颜⾊图getcolor 交互式选择颜⾊图addcolor 增加新⾊于颜⾊图graycolormap 线性灰度图hotcolormap 热⾊颜⾊图xset 图形显⽰⽅式设定xget 读当前图形显⽰⽅式设定getsymbol 交互式选择符号和尺⼨18 图形⽂件及图形⽂字xsave 将图形存储为⽂件xload 从磁盘中读出图形⽂件xbasimp 将图形按ps⽂件打印或存储为⽂件xs2fig 将图形⽣成xfig格式⽂件xclear 清空图形窗⼝driver 选择图形驱动器xinit 图形驱动器初始化xend 关闭图形xbasr 图形刷新replot 更改显⽰范围后的图形刷新xdel 关闭图形xname 改变当前图形窗⼝名称19 控制分析图形bode 伯德图坐标gainplot 幅值图坐标(伯德图中的幅值图)nyquist 乃奎斯特图m_circle m-圆图chart 尼库拉斯图black black-图evans 根轨迹图sgrid s平⾯图plzr 零极点图zgrid z平⾯图20 图形应⽤中的其他指令graphics 图形库指令表xclick 等待⿏标在图形上的单击输⼊locate 由单击读⼊图形中的多点位置坐标xgetmouse 由单击读⼊图形中当前点位置坐标21 系统与控制abcd 状态空间矩阵cont_mat 可控矩阵csim 线性系统时域响应dsimul 状态空间的离散时域响应feedback 反馈操作符flts 时域响应(离散,采样系统)freq2tf 基于传递函数的频域响应freq 频域响应g_margin 幅值裕量imrep2ss 基于状态空间的脉冲响应lqe kalman滤波器lqg lqg补偿器lqr lq补偿器ltitr 基于状态空间的离散时域响应obscont 基于观测器的控制器obsv_mat 观测矩阵p_margin 相位裕量phasemag 相位与幅值计算ppol 极点配置repfreq 频域响应ricc riccati⽅程rtitr 基于传递函数的离散时域响应sm2ss 系统矩阵到状态空间的变换ss2ss 反馈连接的状态空间到状态空间的变换ss2tf 状态空间到传递函数的变换stabil 稳定性计算tf2ss 传递函数到状态空间的变换time_id siso系统最⼩⽅差辨识22 鲁棒控制augment 被控对象增⼴操作bstap Hankel矩阵近似ccontrg H⽆穷⼤控制器dhnorm 离散H⽆穷⼤范数h2norm H2范数h_cl 闭环矩阵h_inf h⽆穷⼤控制器h_norm h⽆穷⼤范数hankelsv hankel矩阵奇异值leqr h⽆穷⼤控制器的lq增益linf ⽆穷范数riccati riccati矩阵sensi 敏感函数23 动态系统arma arma模型arma2p 基于ar模型获得多项式矩阵armac armax辨识arsimul armax系统仿真noisegen 噪声信号发⽣器odedi 常微分⽅程仿真检测prbs_a 伪随机⼆进制序列发⽣器reglin 线性拟合24 系统与控制实例artest arnold动态系统bifish 鱼群⼈⼝发展的离散时域模型boucle 具有观测器的动态系统相位图chaintest ⽣物链模型gpech 渔业模型fusee 登录⽕箭问题lotest lorennz吸引⼦mine 采矿问题obscontl 可控可观系统portr3d 三维相位图portrait ⼆维相位图recur 双线性回归⽅程systems 动态系统tangent 动态系统的线性化tadinit 动态系统的交互初始化25 ⾮线性⼯具(优化与仿真)bvode 边界值问题的常微分⽅程dasrt 隐式微分⽅程过零解dassl 代数微分⽅程datafit 基于测量数据的参数辨识derivative 导数计算fsolve ⾮线性函数过零解impl 线性微分⽅程int2d ⼆维定积分int3d 三维定积分intg 不定积分leastsq ⾮线性最⼩⼆乘法linpro 线性规划lmisolver 线性不等矩阵ode_discrete 离散常微分⽅程ode_root 常微分⽅程根解odedc 连续离散常微分⽅程optim ⾮线性优化quapro 线性⼆次型规划semidef 半正定规划26 多项式计算coeff 多项式系数coffg 多项式矩阵逆degree 多项式阶数denom 分母项derivat 有理矩阵求导determ 矩阵⾏列式值factors 因式分解hermit hermit型horner 多项式计算invr 有理矩阵逆lcm 最⼩公倍数ldiv 多项式矩阵长除numer 分⼦项pdiv 多项式矩阵除pol2des 将多项式矩阵变换为表达式pol2str 将多项式变换为字符串polfact 最⼩因式residu 余量roots 多项式的根simp 多项式的简化systmat 系统矩阵27 信号处理%asn 椭圆积分%k jacobi完全椭圆积分%sn jacobi椭圆函数analpf 模拟量低通滤波器buttmag butterworth滤波器响应cepstrum 倒谱计算cheb1mag chebyshev⼀型响应cheb2mag chebyshev⼆型响应chepol chebyshev多项式convol 卷积corr 相关,协⽅差cspect 谱估计dft 离散傅⽴叶变换fft 快速傅⽴叶变换filter 滤波器建模fsfirlin fir滤波器设计hank 协⽅差矩阵到hankel矩阵变换hilb hilbert变换iir iir数字滤波器intdec 信号采样率更改kalm kalman 滤波器更新mese 最⼤熵谱估计mfft 多维快速傅⽴叶变换mrfit 频率响应拟合phc maikov过程srkf kalman滤波器平⽅根sskf 稳态kalman滤波器system 观测更新wfir 线性相位fir滤波器weiener weiener滤波器window 对称窗函数yulewalk 最⼩⼆乘滤波器zpbutt buthererworth模拟滤波器zpchl chebyshev模拟滤波器28 ⾳频信号analyze ⾳频信号频域图auread 读*.au⾳频⽂件auwrite 写*.au⾳频⽂件lin2mu 将线性信号转换为miu率码信号loadwave 取*.wav⾳频⽂件mapsound ⾳频信号图⽰mu2lin 将mu码率信号转换为线性信号playsnd ⾳频信号播放wavread 读*.wav⾳频⽂件wavwrite 写*.wav⾳频⽂件29 语⾔与数据转换⼯具ascii 字符串的ascii码excel2sci 读ascii格式的excel⽂件fun2string 将scilab函数⽣成ascii码mfile2sci 将matlab的m格式⽂件转换为sci格式⽂件mtlb_load 取matlab第四版本⽂件中变量matlb_save 按matlab第四版本⽂件格式存变量pol2tex 将多项式转换为tex格式sci2for 将scilab函数转换为fortran格式⽂件texprint 按tex格式输出scilab对象translatepaths 将⼦⽬录下的所有matlab⽂件转换为sci⽂件格式。
Matlab如何添加新的工具箱-经验总结最近在学习遗传算法与免疫算法,所以涉及到matlab的工具箱的应用,尤其gads 工具箱,所以在网上下载了一些工具箱,但是不会用,在网上找了点资料,留着以后也可以用。
1,我是单独下载的工具箱,把新的工具箱拷贝到某个目录(我的是C:\Program Files\MATLAB\R2010\toolbox)。
注意:你要是添加的很多个m文件,那就把这些m文件直接拷到再下一层你想要的工具箱的文件夹里例如,我要添加的是遗传工具箱,在刚才的文件夹下我已经有gads(遗传工具箱)文件夹了,但有的m文件还没有,我就把新的m文件统统拷到C:\Program Files\MATLAB\R2010\toolbox\gads目录下了如果你连某工具箱(你打算添加的)的文件夹都没有,那就把文件夹和文件一起拷到C:\Program Files\MATLAB\R2010\toolbox下。
先把工具箱保存到MATLAB安装目录的根目录下面,然后运行matlab---->file---->set path---->add folder 然后把你的工具箱文件夹添加进去就可以了2 在matlab的菜单file下面的set path把它(C:\ProgramFiles\MATLAB\R2010\toolbox\gads)加上。
3 把路径加进去后在file→Preferences→General的Toolbox Path Caching 里点击update Toolbox Path Cache更新一下。
记得一定要更新!我就是没更新,所以添加了路径,一运行还是不行。
后来更新了才行。
4 用which newtoolbox_command.m来检验是否可以访问。
如果能够显示新设置的路径,则表明该工具箱可以使用了。
这个我也不知道怎么用。
怎么检验?在命令窗口输入whichnewtoolbox_command.m?还是打开which newtoolbox_command.m文件(我搜索了,没找到这个文件啊)我一直没搞懂。
中文ScilabSCICOS-動態系統建構及模擬器使用介紹(Scicos–Scilab功能類似Simulink–Matlab)∗R.Nikoukhah S.Steer Scilab中文開發群(翻譯)目錄1中文版前言12介紹23Scicos方塊圖編輯器43.1設定功能塊參數 (4)3.2模擬 (4)3.3其他功能 (4)4基本功能塊(Blocks)類型64.1連續功能塊:CBB(Continuous Basic Block) (6)4.2離散功能塊:DBB(Discrete Basic Block) (6)4.3跨零偵測功能塊:ZBB(Zero Crossing Basic Block) (7)4.4同步功能塊:SBB(Synchro Basic Block) (7)5時間參數的相依及繼承86建構功能塊96.1介面函數 (9)6.1.1語法 (9)6.1.1.1Parameters (9)6.1.2功能塊之資料結構及定義 (11)6.2運算函數 (12)6.2.1行為(Behavior) (12)∗Scicos內附於Scilab內,以開放軟體形式一起散發。
有關Scilab請參考:http://www-rocq.inria.fr/scilab/或ADE 中文Scilab主網頁目錄6.2.2運算函數的類型 (13)6.2.2.1運算函數:型態0 (14)6.2.2.2運算函數:型態1 (14)6.2.2.3Fortran例 (14)6.2.2.4C例 (14)6.2.2.5運算函數:型態2 (14)6.2.2.6運算函數:型態3 (15)6.2.2.7例 (15)6.2.2.8例 (16)6.2.2.9運算函數:型態4 (16)6.2.2.10運算函數:型態5 (18)6.2.2.11例 (18)6.2.2.12例 (19)7結語20中文版前言1中文版前言本文以英文版:SCICOS-A Dynamic System Builder and Simulator之L A T E X原始文檔為本進行中文翻譯。
Simplicity Studio5是一个集成开发环境(IDE),它提供了许多示例代码和项目模板,可以帮助开发人员快速创建应用程序。
以下是如何运用Simplicity Studio5中的例程的步骤:
1. 打开Simplicity Studio5并选择“File”>“New”>“Project”。
2. 在弹出的窗口中,选择所需的项目类型(例如:Android应用程序、iOS应用程序等)。
3. 点击“Next”按钮,然后选择所需的平台和配置选项。
4. 点击“Finish”按钮以创建新项目。
5. 在解决方案资源管理器中,右键单击“src”文件夹,然后选择“New”>“Folder”,输入文件夹名称(例如:“examples”)并按Enter键。
6. 将Simplicity Studio5提供的示例代码或项目模板复制到新创建的文件夹中。
7. 在解决方案资源管理器中,双击“examples”文件夹下的代码文件或项目文件以打开它们。
8. 根据需要修改代码或项目设置。
9. 点击工具栏上的“Build”按钮(或按F7键)以编译代码。
10. 如果编译成功,点击工具栏上的“Run”按钮(或按F5键)以运行程序。
11. 查看输出窗口以查看程序的输出结果。
matlab神经网络工具箱怎么用标题:Matlab神经网络工具箱的使用方法导言:Matlab神经网络工具箱是一个功能强大的工具,用于建立、训练和评估各种类型的神经网络。
本文将介绍如何使用Matlab神经网络工具箱进行神经网络的建立、训练和评估,帮助您更好地理解和使用这个工具箱。
一、Matlab神经网络工具箱的安装首先,您需要确保已成功安装了Matlab软件。
然后,您可以通过以下步骤来安装Matlab神经网络工具箱:1. 打开Matlab软件。
2. 在工具栏上选择“工具”菜单。
3. 在下拉菜单中选择“添加预定目录”。
4. 在弹出的窗口中,选择“文件夹”选项。
5. 点击“浏览”按钮,并选择包含神经网络工具箱的文件夹。
6. 点击“选择文件夹”按钮,然后点击“添加文件夹”按钮。
7. 点击“关闭”按钮,完成神经网络工具箱的安装。
二、神经网络的建立Matlab神经网络工具箱提供了多种类型的神经网络模型,如前馈神经网络、递归神经网络和自组织神经网络。
下面我们以前馈神经网络为例,介绍神经网络的建立方法:1. 打开Matlab软件,并在命令窗口中输入“nprtool”命令,打开“神经网络模式选择器”窗口。
2. 在“神经网络模式选择器”窗口中,选择“构建”按钮。
3. 在“神经网络模式选择器”窗口中,选择“前馈神经网络”选项,并点击“下一步”按钮。
4. 在“选择网络架构”窗口中,选择神经网络的层数、神经元数量和输入、输出数据的维度。
5. 点击“下一步”按钮,然后点击“完成”按钮,完成神经网络的建立。
三、神经网络的训练神经网络的训练是指通过将已知的输入和输出数据进行反复迭代调整网络参数,从而使网络能够更好地拟合输入输出之间的关系。
下面我们介绍神经网络的训练方法:1.在命令窗口中输入“trainlm”命令,选择Levenberg-Marquardt算法作为训练函数。
2.输入训练数据和目标数据,通过“trains”命令开始训练神经网络。
Scilab 5.3.3下模块的移植、在线帮助的编写以及工具箱的建立——By 廖昊夫孙琪一、引言Scilab作为一个仍在不断开发更新的开源计算软件,其每一个版本较之前都有很大变化,这种变化使得之前在旧版本上开发的一些模块,不能很好地在新版本(Scilab 5.3.3)上运行,基于此问题本文将展开深入探讨,并给出工具箱的建立办法。
二、模块的移植Xcos 界面Xcos是新版本Scilab的仿真器,其在界面上较之前有很大的改动。
新版本界面如下:图1 Xcos组件盘图2 Xcos主窗口如上图所示,图1是Xcos的组件盘,组件盘中存放的是用户或者系统已经添加并分类好的模块,通过它用户可以很方便的向Xcos的主窗口添加模块。
图2是Xcos的主窗口,是用户搭建自己仿真模型的区域。
Xcos图片文件在Xcos中图片文件分为三类:.gif或.png文件,.svg文件以及.h5文件。
它们均用来显示模块的外观,但用在不同的场所。
◆.gif或.png文件是标准的图片文件,是位图,其主要用于在组件盘中显示模块的外观,如图1中红方框内的模块图片实际上就由调用对应的.png文件所实现的。
Scilab自带的该类文件存放于SCI\modules\xcos\images\palettes◆.svg文件由XML语言编写,属于矢量图。
当该类文件对应的图片被放大时,图片的清晰度不会发生改变。
因此该图片被用于显示Xcos主窗口中的模块外观。
如图2中红方框内的模块外观就是由.svg文件产生的。
Scilab自带的该类文件存放于SCI\modules\xcos\images\blocks◆.h5文件是Scilab通过模块的接口函数自动生成的文件,用于向Xcos中添加模块时使用,Xcos能够通过.h5文件生成对应的.svg图片。
Scilab自带的该类文件存放于SCI\modules\scicos_blocks\blocks模块的加载在5.3.x中打开SciNotes,图3 SciNotes打开示意图,如红方框所示进入SciNotes后,输入如下形式的代码:loadXcosLibs(); //读取Xcos模块库pal =xcosPal("My palette"); //设置你要在xcos中存放你模块的文//件名exec('接口函数路径',-1); //运行接口函数和计算函数,相当于注册exec('计算函数路径',-1); //以便Scilab能够识别这些外来函数//另外当计算函数用非Scilab语言编写时,这时的注册方式不//能用exec()函数来注册,而应该用ilib_for_link函数注//册PathName ='你需要存放的.h5文件路径'; //在Scilab中模块的加载需要先生成一//个.h5文件来配套使用scs_m =接口函数名("define"); //以job=’define’运行接口函数,由//返回值scs_m获取模块的数据结构及//初始化参数、外观等信息export_to_hdf5(PathName, "scs_m"); //生成.h5文件,需要说明的是这里的//PathName及scs_m均是自己设定的//变量名pal =xcosPalAddBlock(pal,PathName,'.png或.gif文件路径','.svg文件路径'); //由.h5,.png和.svg文件及设置好//的pal名,向xcos中加载模块。
其//中.png文件和.svg文件路径为可//选参数xcosPalAdd(pal); //在xcos中添加存放模块的文件夹由上面的代码我们可以看出,在5.3.x中生成模块需要首先生成一个包含模块信息各方面的.h5文件,然后再调用加载模块函数xcosPalAddBlock,以在xcos中生成图形化界面。
当编写好加载代码后点击运行,然后打开xcos我们就能看到模块已经成功加载完成了。
点击运行按钮,执行代码:图4 执行按钮示意图,如红方框所示模块加载成功:代码中设定的文件名图5 模块加载完成示意图图5中模块图片与系统自带原生模块图片有出入,这是因为在编写模块加载代码时,我们并没有为模块指定.png 文件以及.svg文件,即xcosPalAddBlock()函数的第三、四个参数为空。
此时系统只能由.h5文件自动生成模块图片,图5的模块图片均由系统自动生成。
计算函数接口对于由非scilab语言编写的计算函数,我们并不能直接将其运行,因此需要使用scilab里面专门提供的接口函数(这里所说的接口函数不是模块里的接口函数,请勿混淆)最主要的就是ilib_for_link这个函数,它的各参数的意义为:ilib_for_link([’标签名’], ’.c文件’, [], ’c’)◆这里的标签名对应于模块接口函数中model.sim=list('计算函数名',函数类型用数字(1~5表示))的计算函数名。
◆在最新版本的Scilab中第三个参数应为计算函数源文件(旧版本位.obj文件)◆第三个参数一般置空,第四个参数则是你计算函数所用的语言类型,C语言用’c’表示,fortran语言用’f’表示。
◆在执行完ilib_for_link这个函数后应该紧接着写一句exec loader.sce来完成计算函数的运行值得注意的是,在使用ilib_for_link函数时,计算函数源文件应该放置在scilab当前默认的文件夹中,其路径可以在主窗口中直接输入pwd查看。
若想改变scilab默认路径可采用cd(‘修改后的路径名’)来修改。
最终的非Scilab语言计算函数的注册方式如下:ilib_for_link(['标签名'],'.c文件',[],'c');exec loader.sce三、在线帮助的编写在线帮助,即Scilab的help。
当我们在Scilab中开发好自己编写好的函数或者模块后,为了方便别人使用,我们需要为其添加在线帮助,以告诉使用者我们编写的函数或模块的使用方法。
在线帮助界面图6 Scilab在线帮助界面如图6所示,在线帮助分为两个部分,左侧为在线帮助的书签,用于将在线帮助分类。
右侧为在线帮助的主窗口,该窗口界面由XML语言编写。
在线帮助资源Scilab在线帮助所调用的资源分为两类:.xml文件和.jar文件。
◆.xml文件由XML语言编写,是在线帮助的核心部分,Scilab通过该类型的文件来显示在线帮助的内容◆.jar文件由.xml文件生成,Scilab能够通过相应的函数将.xml文件以及其他生成在线帮助所需的所有资源封装成.jar文件,最终Scilab通过调用.jar文件生成在线帮助。
因此,生成在线帮助的逻辑框图如下:.XML文件的编写在Scilab中添加帮助文档,最基本的一步是在遵循xml语法的基础上按照Scilab对其的格式要求编写xml文档。
先介绍一下xml的语法,然后以DES模块的帮助文档DES.xml为例,介绍帮助文档的书写格式。
1.xml语法简介◆各元素是以<aaa>开始,以</aaa>结束的,其中aaa是该段的标识,两个标志之间的内容即属于此部分。
◆xml中,注释是<!--asf-->格式◆在Scilab的帮助文档中,有以下几个常用标示符:<refsection> </refsection> 用于区分说明文档中各个部分<pubdate> </pubdate> 标识文档日期<title> </title> 标识该部分的题目<imageobject> </imageobject> 放置图片文件<para> </para> 放置带显示的文字<itemizedlist> </itemizedlist> 以列表条目形式显示内容<listitem> </listitem> 每条列表项内容(通常itemizedlist、listitem、para嵌套使用)<term> </term> 用于标识该条目的标题<link> </link> 用于链接同文件夹中的文件2.示例以DES.xml文档为例解释xml文档的书写格式:<?xml version="1.0" encoding="UTF-8"?> <!—xml版本号和编码方式,这个是必须有的--><refentry xmlns="/ns/docbook"xmlns:xlink="/1999/xlink"xmlns:svg="/2000/svg"xmlns:mml="/1998/Math/MathML"xmlns:db="/ns/docbook" <!—上面几行是命名空间,最好不动--> version="5.0-subset Scilab" xml:lang="en" <!--此处需要注意选择语言种类en_US,也可以选择其他语言,具体参见scilab帮助。
这是Scilab要求必须有的部分--> xml:id="DES"> <!--此处的id需要与同文件夹(即同一个Palette)中文件不同的id号--><info><pubdate>22-08-2011</pubdate> <!--文档日期--></info><refnamediv><refname>DES module</refname> <!--模块名称--><refpurpose>DES (Data EncryptionStandard) module, used to encrypt messages</refpurpose> <!--模块简述--></refnamediv><refsection> <!—每个部分使用refsection标记--><title>Block Screenshot</title> <!—title是关键字,可以标识此为标题类型--> <para> <!—para中的内容是待显示的内容--><inlinemediaobject> <!—显示图片的固定格式--><imageobject><imagedata fileref="../png/DES.png"align="right" valign="middle"/> <!--需要使用png或者svg图片--> </imageobject></inlinemediaobject> <!—显示图片的固定格式--></para></refsection><refsection><title>Palette</title><para>DES Palette</para></refsection><refsection><title>Description</title><itemizedlist><listitem> <!—如果有很多内容需要逐条列出,使用关键字lititem--><para>Enter the size of bit of input binarynumbers and the content of the key.This modulewill encrypt messages using the key.</para></listitem></itemizedlist></refsection><refsection><title>Dialog box</title><para><inlinemediaobject><imageobject><imagedata fileref="../png/Dlg_DES.png" align="center" valign="middle"/></imageobject></inlinemediaobject></para><itemizedlist><listitem><para>Input size. The size of each group of binary numbers. The recommended value is 8.</para></listitem><listitem><para>key. The key is a 7-bit vector whose every bit is a number ranging 0 ~ 255.</para></listitem></itemizedlist></refsection><refsection><title>Interfacing function</title><itemizedlist><listitem><para>DES on 5.3.x\model\DES\des_int.sci</para></listitem></itemizedlist></refsection><refsection><title>Computing function</title><itemizedlist><listitem><para>DES on 5.3.x\model\DES\des_com.sci</para></listitem></itemizedlist></refsection><refsection><title>Author</title><itemizedlist><listitem><para>Liao Haofu, Cen Jianhu, Sun Qi, Sun Jianfeng</para></listitem></itemizedlist></refsection></refentry>3.关于链接文件在需要加入超链接的地方输入:<link linkend="example_1_function_7">example_1_function_7</link>其中,example_1_function_7是一个xml文件名,且此文件与当前编辑的xml文件在同一文件夹下。