在matlab中怎么将程序执行中的变量输出到workspace 15

比如程序如下:functiony=myfun(a)y=a^2;myfun是一个子程序,我想将a的值在计算函数输出值之前输出到workspace中,请问如何实现??谢谢帮助... 比如程序如下:

function y=myfun(a)
y=a^2;

myfun是一个子程序,我想将a的值在计算函数输出值之前输出到workspace中,请问如何实现??
谢谢帮助
谢谢做出的回答,但是问题还没有解决.

我指的是由于引用函数的特殊性,计算必须使用workspace中的变量,所以在计算前就必须把参数输出到workspace中.
采用双返回值,我试过了,报错.

我在help中已经找到了解决方法,供大家参考.

function y=Ei(a)

assignin('base','s',a);
y=-double(vpa(subs(maple('evalf','(Ei(1,s))'))));

欢迎大家继续讨论,提其他方法

再次感谢回答问题的朋友
展开
 我来答
百度网友3c63e6c
2015-06-09 · TA获得超过2847个赞
知道大有可为答主
回答量:3829
采纳率:68%
帮助的人:2742万
展开全部
MATLAB在程序运行过程中,将为每个函数分配它自己的变量空间,在函数退出之后,该变量空间也就立即被注销。为将函数输出到workspace,采用 assignin(WS,'name',V)
其中,WS为工作空间名称,'name'为变量名,V是为该变量指派的值。
例如

assignin('base','a',5); % 为该变量指派新的值
则在workspace中输出了a这个变量,其值为5
matlabfunc
2007-12-01 · TA获得超过1197个赞
知道小有建树答主
回答量:1004
采纳率:0%
帮助的人:581万
展开全部
双返回值即可
function [y,b]=myfun(a)
b=a;
y=a^2;
说话呢,要负责任,你确定你的尝试没有语法问题,以下是我的测试结果:
[a,b]=myfun(1)

a =

1

b =

1
关于另外那个问题,到另外一帖看。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式