24小时热门版块排行榜    

Znn3bq.jpeg
汕头大学海洋科学接受调剂
查看: 1272  |  回复: 6
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

xiashaoyan

新虫 (正式写手)

[求助] MATLAB带有两重循环程序怎么改为向量话编程呢? 已有1人参与

我想用MATLAB向量化编程,遇到一些问题,下面我用下面这个案例说明一下我的问题
下面是一个MATLAB中arrayfun函数的案例,是个正确的代码,能运行程序
R1=1:100;
R2=1:100;
R3=1:100;
R = arrayfun( @zxy,R1,R2,R3);
function funz =zxy(x,y,z)
  funz = x+y.*z;
end
1.问题1:如果funz.m文件中需要调用一个变量的值(比如下面的例子中的a),怎么设置呢?比如:
R1=1:100;
R2=1:100;
R3=1:100;
a=5;
R = arrayfun( @zxy(R1,R2,R3,a),R1,R2,R3);
function funz =zxy(x,y,z,1)
  funz = a*x+y.*z;
end

然后MATLAB报错,说
Error: File: Untitled2.m Line: 5 Column: 19
Unbalanced or unexpected parenthesis or bracket.

所以我想问的问题,怎么在arrayfun函数中调用a的值呢???

问题2:
我发现最开始运行正确的程序中,R矩阵的大小和R1,R2,R3矩阵大小都一样,都是1*100,也就是说
R1=1:100;
R2=1:100;
R3=1:100;
R = arrayfun( @zxy,R1,R2,R3);
function funz =zxy(x,y,z)
  funz = x+y.*z;
end
在计算的过程中是R1,R2,R3是一一对应的,但是如果不是一一对应,而是每个R1值对应R2=1:100呢?
比如说我想用MATLAB向量化编程实现下面用for循环,但是怎么实现呢???

for R1=1:100
     for R2=1:100
           for R3=1:100
                 R =R1+R2*R3;
           end
      end
end
现在我想用MATLAB想量化实现,比如用arrayfun、cellfun、spfun函数,但是针对这个问题,我不知道用这几个函数中的哪一个?
回复此楼

» 猜你喜欢

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

feixiaolin

荣誉版主 (文坛精英)

优秀版主

引用回帖:
3楼: Originally posted by xiashaoyan at 2015-09-10 23:49:44
问题2我已经解决了,现在主要是问题1,设计到一些参数的调用,不知道arrayfun函数能不能调用类似a这样的变量值...

感觉 R = arrayfun( @zxy(R1,R2,R3,a),R1,R2,R3);
成了嵌套调用,语法有问题
4楼2015-09-11 05:56:04
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 7 个回答

feixiaolin

荣誉版主 (文坛精英)

优秀版主

大约是加点,形如
R. =R1.+R2.*R3.;
你可以试一试
2楼2015-09-10 20:28:10
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

xiashaoyan

新虫 (正式写手)

引用回帖:
2楼: Originally posted by feixiaolin at 2015-09-10 20:28:10
大约是加点,形如
R. =R1.+R2.*R3.;
你可以试一试

问题2我已经解决了,现在主要是问题1,设计到一些参数的调用,不知道arrayfun函数能不能调用类似a这样的变量值
3楼2015-09-10 23:49:44
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

xiashaoyan

新虫 (正式写手)

是呀,我感觉这个函数不能这么写。那么怎么解决问题二这种问题呢?因为这种问题我感觉也经常遇到吧

发自小木虫Android客户端
5楼2015-09-11 06:33:56
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 300分求调剂 (085501机械专硕,本科扬大) +8 xu@841019 2026-04-11 9/450 2026-04-13 21:36 by xu@841019
[考研] 245求调剂 +3 冰糖橘?汽水 2026-04-13 7/350 2026-04-13 16:42 by 冰糖橘?汽水
[考研] 生物学调剂,一志愿西南大学348,Top期刊一区二作、二区三作,三等奖学金三次 +5 candyyyi 2026-04-09 5/250 2026-04-13 09:02 by 可淡不可忘
[考研] 296求调剂 +14 汪!?! 2026-04-10 16/800 2026-04-12 10:48 by zhouyuwinner
[教师之家] 请问地理、遥感方面,可以做哪些横向项目啊,纵向完不成考核啊 +3 锦衣卫寒战 2026-04-07 5/250 2026-04-11 20:51 by 豫椒
[考研] 农学0904 312求调剂 +3 Say Never 2026-04-11 3/150 2026-04-11 17:22 by daydayup2005
[考研] 调剂求助 +6 果然有我 2026-04-11 7/350 2026-04-11 16:22 by 明月此时有
[考研] 085500求调剂材料 +10 易11122 2026-04-09 10/500 2026-04-11 10:39 by maddjdld
[考研] 广东省 085601 329分求调剂 +14 Eddieddd 2026-04-10 14/700 2026-04-11 09:58 by bljnqdcc
[考研] 085402通信工程调剂,有4项学科竞赛国奖(电赛国二),硕士研究生调剂自荐信。 +5 m永o不v言o弃m 2026-04-09 5/250 2026-04-11 09:33 by zhq0425
[考研] 一志愿211,化学310分,本科重点双非,求调剂 +23 努力奋斗112 2026-04-08 23/1150 2026-04-10 23:29 by 314126402
[考研] 吉大计算机技术331分,英语六级,求调剂 +3 峰峰021116 2026-04-09 3/150 2026-04-10 20:01 by chemisry
[考研] 0858求调剂 5+5 Gky09300550, 2026-04-10 8/400 2026-04-10 19:13 by chemisry
[考研] 本9 一志愿西工大085601 324求调剂 +5 wysyjs25 2026-04-10 5/250 2026-04-10 16:57 by luoyongfeng
[考研] 296求调剂 +6 汪!?! 2026-04-08 6/300 2026-04-10 11:02 by mattzhming
[考研] 求调剂 +11 翩翩一书生 2026-04-09 13/650 2026-04-10 10:27 by liuhuiying09
[考研] 材料专硕调剂 +16 哈哈哈吼吼吼哈 2026-04-07 17/850 2026-04-09 21:16 by wutongshun
[考研] 材料工程322 +18 哈哈哈吼吼吼哈 2026-04-07 19/950 2026-04-09 10:44 by cymywx
[考研] 0860004 求调剂 309分 +6 Yin DY 2026-04-09 6/300 2026-04-09 10:19 by 啊李999
[考研] 求调剂,现在还能填的 +3 上岸小莹加油 2026-04-08 3/150 2026-04-08 14:30 by zhq0425
信息提示
请填处理意见