Matlab 版 (精华区)
发信人: zjliu (秋天的萝卜), 信区: Matlab
标 题: [合集]怎样在函数体内将变量存入工作空间?
发信站: 哈工大紫丁香 (2003年10月31日15:00:10 星期五), 站内信件
────────────────────────────────────────
btt (BTT) 于 Mon Oct 27 15:05:13 2003 说道:
有一函数形式如下
function [A,B,...] = ex1(a,b,...)
ts = a+b;
vx = a/b;
vy = ...
...
open_system('dabanew');
set_param('dabanew/tl','value','ts');
set_param('dabanew/vx','InitialCondition','vx');
set_param('dabanew/vy','InitialCondition','vy');
set_param('dabanew/vz','InitialCondition','vz');
sim('dabanew',[0,(ta-ts)*3600*24/TU],options);
即在函数前半部分计算得到了ts,vx,vy,vz等一些参数,在函数的后半部分
要调用Simulink并利用这些参数进行仿真。由于set_param命令加载的参数
(即此例中的ts,vx,vy,...)必须存在于工作空间之内,所以要在调用
Simulink之前将这些参数加入工作空间,请问应该怎么实现。
────────────────────────────────────────
zjliu (秋天的萝卜) 于 Mon Oct 27 16:17:18 2003 说道:
可用save函数保存成数据文件,或者把它们作为函数的输出变量
────────────────────────────────────────
Mathsims (第二百三十七世剩闲) 于 Mon Oct 27 16:59:42 2003 说道:
global
────────────────────────────────────────
btt (BTT) 于 Mon Oct 27 18:03:19 2003 说道:
save后也不能存入工作空间啊,不可以作为函数输出的,因为函数还没运行完就要求着几
个变量调入工作空间了。函数的下半部分就要用。
────────────────────────────────────────
Mathsims (第二百三十七世剩闲) 于 Mon Oct 27 19:36:25 2003 说道:
把那几个变量设置为global变量,然后用一个script来实现整个工作。
doc global
也许对你有帮助。
────────────────────────────────────────
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:2.529毫秒