24小时热门版块排行榜    

查看: 875  |  回复: 13
当前主题已经存档。

wang1234568089

金虫 (初入文坛)

[交流] 【求助】关于句柄函数的问题

请问一下如何生成一个含有句柄函数的矩阵?以及怎么样调出这个矩阵的句柄函数?

举一个例子:

1、

function y=f1(x,a)

T=[1 2 3];

y=[];

for i=1:Ty

y=[y T(i).*x*a];%目的是输出一个矩阵[x*a   2*x*a  3*x*a]把这个矩阵中的元素作为句柄函数输出

end

2、

下面还要编写一个函数将上述矩阵中的元素x*a   2*x*a  3*x*a分别在【0,1】 上对a求积分得到一个新的矩阵【0.5*x   x   1.5*x】     

3、

再编写一个矩阵将这个矩阵中的所有元素求和,这个我知道。               



关键在于

1、

第二步如何将第一步形成的矩阵中的元素进行编写来获得第二步中的那个矩阵。

[ Last edited by sunxiao on 2009-3-8 at 12:36 ]
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

fspdlh

金虫 (正式写手)

★ ★
sunxiao(金币+2,VIP+0):欢迎参与,加分鼓励 3-4 00:37
建议你看看kron这个函数
[x*a   2*x*a  3*x*a]可以写成
kron(a.*(1:3),x)
2楼2009-03-03 16:45:30
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

wang1234568089

金虫 (初入文坛)

你说的那个函数可以在循环里面应用吗?因为我说的【1 2  3】等是举一个例子,我是要引用一个数组中的数。
另外那个函数能否在别的函数中把句柄函数引用出来?
另外,我是想知道关于句柄函数和矩阵的关系的一些知识,包括句柄函数能否形成矩阵,假如能形成矩阵的话怎么调用?

[ Last edited by wang1234568089 on 2009-3-5 at 13:24 ]
3楼2009-03-05 13:05:56
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

fspdlh

金虫 (正式写手)

★ ★
coldwind042(金币+2,VIP+0):欢迎多指导!学习啦! 3-5 19:33
句柄函数我没搞过,不过我觉得你这问题不难,不用想那么多,另外,尽量不用循环,MATLAB是矩阵化的语言,用循环就大才小用了,速度会慢很多的
for i=1:Ty
y=[y T(i).*x*a];
end
以上语句等同于kron(T,x*a),用不着循环,且速度会快很多
4楼2009-03-05 18:40:13
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

wang1234568089

金虫 (初入文坛)

如果不用循环的话,而且如你所说kron(T,x*a)能够形成我上面的矩阵,那么接下来怎么办呢?我想要把矩阵里面的元素调出来进行积分求解,那该怎么办呢?
5楼2009-03-09 16:19:19
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

hitzhang

木虫 (正式写手)

★ ★
sunxiao(金币+2,VIP+0):谢谢参与,常来交流 3-10 23:53
>> syms y x a
>> y=x*a*[1 2 3]

y =

[   x*a, 2*x*a, 3*x*a]


>> Y=int(y,a,0,1)

Y =

[ 1/2*x,     x, 3/2*x]


>> YY=sum(Y)

YY =

3*x


>> YYY=subs(YY,x,2)

YYY =

     6

>>
6楼2009-03-10 22:41:18
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

wang1234568089

金虫 (初入文坛)

关于YY这个函数,x是字符变量,我的最终目的是让3*x作为一个关于x的function ,然后利用遗传算法求解,楼上给出的是字符变量,不能用于遗传算法的function.
7楼2009-03-11 13:58:48
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

hitzhang

木虫 (正式写手)

★ ★ ★
sunxiao(金币+3,VIP+0):谢谢参与,欢迎常来 3-12 11:07
>> syms y x a
>> y=x*a*[1 2 3]

y =

[   x*a, 2*x*a, 3*x*a]


>> Y=int(y,a,0,1)

Y =

[ 1/2*x,     x, 3/2*x]


>> f = inline(sum(Y))

f =

     Inline function:
     f(x) = 3.*x

>> f(1:3)

ans =

     3     6     9

>>
8楼2009-03-12 11:03:41
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

wang1234568089

金虫 (初入文坛)

你看我下面的程序可以吗?

function y=ff(x,a)
T=[1 2 3];TG=[0.1 0.2 0.3];
Q=[];
H=[];
for i=1:length(T)
    Q=[Q x.*quad(@(a) a.*T(i),0,1)];
    H=[H (Q(i)-TG(i)).^2];
end
y=sum(H);
我把上面的这个函数程序带入遗传算法工具箱,能够完全进行求解。
但是当我把 Q=[Q x.*quad(@(a) a.*T(i),0,1)];这个语句换成 Q=[Q x.*quad(@(a) f(x,a),0,1)];就不可以了。当然f(x,a)是我自己编写的一个函数如下:
function y=f(x,a)
T=[1 2 3];
y=exp(x./a.*T(i).*exp(-a./T(i)));
请教楼上的怎么解决这个问题,谢谢了。

[ Last edited by wang1234568089 on 2009-3-14 at 13:42 ]
9楼2009-03-14 13:41:14
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

hitzhang

木虫 (正式写手)

★ ★
sunxiao(金币+2,VIP+0):谢谢参与,欢迎常来 3-15 02:10
function y=f(x,a)
T=[1 2 3];
y=exp(x./a.*T(i).*exp(-a./T(i)));
你编的这个函数有问题,

你是这个意思吗?
function y=f(x,a)
T=[1 2 3];
y=sum(exp(x./a.*T.*exp(-a./T)));
10楼2009-03-14 17:18:26
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 wang1234568089 的主题更新
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 今天系统多次维护,明天很可能放榜! +5 zju2000 2026-08-16 5/250 2026-08-16 23:23 by Haru815
[基金申请] 时间戳又变了8-15 +13 archvillain 2026-08-15 25/1250 2026-08-16 20:13 by zhaosm1982
[基金申请] 快农历七夕节了,轻松一下,男人悄悄话,女施主请不要进来。 +3 Tide man 2026-08-14 3/150 2026-08-16 17:47 by jurkat.1640
[基金申请] 哪位老哥知道今年的国自然具体哪一天放榜? +9 Ldrop2023 2026-08-13 9/450 2026-08-16 13:24 by wukun_007
[基金申请] 咱们一起用铁证分析2026国家社科基金中标与否 +7 启萌科技 2026-08-12 26/1300 2026-08-16 12:35 by 启萌科技
[基金申请] 我的国基提前知道中了,可是同事的操作让我实在接受不了,怎么会有这样的人 +11 家与远方 2026-08-10 16/800 2026-08-16 10:28 by ray43
[基金申请] 有时候,自然基金真的不能太认真 (我的申报经验) +10 majunge000 2026-08-11 12/600 2026-08-16 08:18 by xli1984
[基金申请] filecode=后面第一个是大写字母 +6 wangze12014 2026-08-14 7/350 2026-08-15 20:12 by gltch
[基金申请] filecode +8 cratir 2026-08-14 12/600 2026-08-15 18:08 by zyfgau
[基金申请] 各位道友,我要去昆明玩几天,回来见。 +7 Tide man 2026-08-14 8/400 2026-08-15 01:11 by arzu_hma
[基金申请] 是这周出结果还是下周出结果? +4 yuleib84 2026-08-11 4/200 2026-08-14 23:05 by lfy8008
[基金申请] 奇怪,两个人的filecode固定段从头到尾一模一样 +8 布布和一二 2026-08-10 11/550 2026-08-14 14:58 by Equinoxhua
[基金申请] filecode +15 documentary 2026-08-10 17/850 2026-08-14 10:08 by kissu88
[基金申请] 重要来源:本周末出结果 +10 瞬息宇宙 2026-08-12 10/500 2026-08-13 15:46 by likettle
[基金申请] 不应该看fileCode +7 且听虎啸 2026-08-12 9/450 2026-08-13 14:27 by flydreamws
[基金申请] Filecode 又变了,巨变 +3 WH3796 2026-08-12 4/200 2026-08-13 14:13 by 小木虫6752397
[基金申请] 分享一下我之前已中青C的计划书的filecode +4 布布和一二 2026-08-11 5/250 2026-08-13 12:56 by cratir
[基金申请] 为什么网上很多人说本周 12号出结果 +6 瞬息宇宙 2026-08-10 7/350 2026-08-11 19:25 by Tide man
[基金申请] 确定了,国自然21号放榜 +6 布布和一二 2026-08-10 7/350 2026-08-10 19:15 by 2000zf36392
[基金申请] 国自然结果 +4 Vierhys 2026-08-10 8/400 2026-08-10 15:06 by Vierhys
信息提示
请填处理意见